https://school.programmers.co.kr/learn/courses/30/lessons/59413
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
어제에 이어 간만에 풀었던 재귀 문제.
재귀를 어떻게 하는 것인지 알고만 있으면 크게 어려울 건 없는듯
WITH RECURSIVE TMP AS (
SELECT 0 AS HOUR
UNION
SELECT HOUR + 1
FROM TMP
WHERE HOUR < 23
)
SELECT HOUR
,COUNT(ANIMAL_ID) AS COUNT
FROM TMP
LEFT JOIN ANIMAL_OUTS
ON SUBSTR(DATETIME, 12, 2) = HOUR
GROUP BY HOUR
with recursive temp as (
select 0 as hour
union all
select hour + 1
from temp
where hour <23)
select t.hour, count(animal_id) as count
from temp t left join animal_outs a on t.hour = hour(a.datetime)
group by t.hour
order by t.hour
'TIL 통합 > SQL' 카테고리의 다른 글
[LEETCODE] PRODUCT SALES ANALYSIS 3 - WHERE 응용 (0) | 2025.04.05 |
---|---|
[프로그래머스] 우유와 요거트가 담긴 장바구니(GROUP_CONCAT or HAVING 활용) (1) | 2025.04.03 |
[프로그래머스] JOIN - 상품을 구매한 회원 비율 구하기 (0) | 2025.04.02 |
[프로그래머스] SELECT - 멸종위기의 대장균 찾기(RECURISVE) (0) | 2025.04.02 |
[프로그래머스] JOIN - 특정 기간 동안 대여 가능한 자동차들 (0) | 2025.04.01 |