프로그래머스 - 입양 시각 구하기(2)
SQL을 공부하고 있던 와중에 프로그래머스에도 SQL 문제들이 있다는 걸 발견했다. 쭉쭉 풀다가 GROUP BY 입양 시각 구하기(2) 에서 막혔다. 느낌적으로는 0~23으로 되어있는 테이블과 ANIMAL_OUTS를 group by 한 테이블을 조인하면 될 거 같다. 풀고 나서 이해한 내용을 MySQL, Oracle로 정리했다. MySQL 0~23 numerical cte 를 만드는 다양한 방법 중 2가지 -- MySQL의 VALUES를 이용한 방법 WITHhronly(hour)AS(VALUESROW(0),ROW(1),ROW(2),ROW(3),ROW(4),ROW(5),ROW(6),ROW(7),ROW(8),ROW(9),ROW(10),ROW(11),ROW(12),ROW(13),ROW(14),ROW(15),ROW(16),ROW(17),ROW(18),ROW(19),ROW(20),ROW(21),ROW(22),ROW(23))-- recursive cte를 활용한 방법 WITHRECURSIVEhronlyAS(SELECT0AShourUNIONALLSELECThour+1FROMhronlyWHEREhour<23)이 문제를 처음 풀 때 cte 2개를 만들었다. 근데 cte 한 개로도 풀 수 있다는 걸 나중에 알았다....