1. left join 을 사용해서 풀기
계층형 쿼리를 생성하여 조인하여 문제를 해결한다.
SELECT HOUR, COUNT(O.DATETIME) COUNT
FROM
(SELECT LEVEL -1 HOUR
FROM DUAL
CONNECT BY LEVEL <= 24
) A LEFT JOIN ANIMAL_OUTS O
ON A.HOUR = to_char(O.DATETIME,'HH24')
GROUP BY HOUR
ORDER BY HOUR
계층형 쿼리란?
Connect by strat with : 계층 쿼리로 상하 관계를 질의하는데 사용 이때 level 은 순위를 의미한다.
Connect by level: 연속된 숫자를 조회할 때 활용
SELECT LEVEL -1
FROM DUAL
CONNECT BY LEVEL <= 24
위와 같이 작성하면 0부터 23까지 표현할 수 있다.
'Algorithm' 카테고리의 다른 글
[백준][python]18312 시각 (0) | 2023.03.04 |
---|---|
[백준][2661]좋은 수열 (0) | 2022.08.08 |
[프로그래머스]네트워크 (0) | 2022.07.09 |
[프로그래머스][이분탐색]입국심사 (0) | 2021.09.25 |
Algorithm[프로그래머스][스택/큐]주식 가격 (0) | 2021.09.21 |