12. 입양 시각 구하기(2)
https://school.programmers.co.kr/learn/courses/30/lessons/59413
#문제 : 보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 0시부터 23시까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성해주세요. 이때 결과는 시간대 순으로 정렬해야 합니다.
#조건 1: HOUR이라는 컬럼에 0~23까지 인덱스 부여(재귀함수 사용) #조건 2: 시간대별 입양 건 수 확인(Hour, Group by, count 사용) #조건 3: 조건 1과 조건 2을 결합 with recursive cte(n) as ( select 0 union all select n+1 from cte where n < 23 ) select n as HOUR, count(animal_id) COUNT from cte left join animal_outs on n = hour(datetime) group by 1 order by 1 ;
#생각해보기 #재귀함수(recursive) 사용법에 대한 숙지 필요! #왜 그렇게 작성하고, 작동 방법에 대한 이해가 필요!