[SQL] 프로그래머스 SQL 고득점 Kit_GROUP BY (22/24)

餘園·2025년 8월 1일

SQL 고득점 Kit

목록 보기
73/109
post-thumbnail

입양 시각 구하기(2) (Level 4)

보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 0시부터 23시까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성해주세요. 이때 결과는 시간대 순으로 정렬해야 합니다.

solve

WITH RECURSIVE hours AS (
    SELECT 0 AS hour
    UNION ALL
    SELECT hour + 1 FROM hours WHERE hour < 23)
    
SELECT h.hour, COUNT(a.DATETIME) as COUNT
    FROM hours h
    LEFT JOIN ANIMAL_OUTS a ON h.hour = HOUR(a.DATETIME)
    GROUP BY h.hour
    ORDER BY h.hour
  • 0~23시 포함하는 테이블을 만든다.
    • LEFT JOIN으로 입양 건수 없는 시간도 0으로 출력되게 만든다.
profile
What else can I do

0개의 댓글