728x90
반응형
목차
접속 링크
https://programmers.co.kr/learn/courses/30/lessons/59413
코딩테스트 연습 - 입양 시각 구하기(2)
ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물
programmers.co.kr
풀이 설명
0~23시로 시간을 설정하는 것이 큰 포인트이다.
계층적 퀴를 처리할 때 사용하는 LEVEL를 사용했다.
SELECT
LEVEL - 1 AS HOUR -- LEVEL은 1부터 시작하므로 0부터 시작할시 -1을 넣어준다 1~24시까자이 데이터 출럭
FROM
DUAL
CONNECT BY
LEVEL <= 24
경이로운 타인의 풀이 코딩
SELECT B.HOUR, NVL(COUNT, 0) AS COUNT
FROM(
SELECT TO_CHAR(DATETIME, 'HH24') AS HOUR, COUNT(*) AS COUNT
FROM ANIMAL_OUTS
GROUP BY TO_CHAR(DATETIME, 'HH24')
ORDER BY HOUR
) A, // A와 B절을 JOIN한다
(
SELECT (LEVEL-1) AS HOUR
FROM DUAL CONNECT BY LEVEL <= 24
) B
WHERE B.HOUR = A.HOUR(+) // B를 기준으로 RIGHTH OUTER JOIN
ORDER BY HOUR_LIST.HOUR
728x90
반응형
'코딩테스트' 카테고리의 다른 글
프로그래머스 SQL 고득점 Kit String Date 중성화 여부 파악하기 (0) | 2022.05.23 |
---|---|
프로그래머스 SQL 고득점 Kit String Date 이름에 el이 들어가는 동물 찾기 (0) | 2022.05.23 |
콜라츠 추측 / Javascript [프로그래머스 Level1] (0) | 2022.04.29 |
신고 결과 받기 / Javascript [프로그래머스 Level1] (0) | 2022.04.29 |
자릿수 더하기 / Javascript [프로그래머스 Level1] (0) | 2022.04.29 |
댓글