~고군분투 인생살이~

[GROUP BY] 입양 시각 구하기(1) 본문

SQL/프로그래머스

[GROUP BY] 입양 시각 구하기(1)

소금깨 2022. 5. 20. 20:02

문제 설명과 예시

 

풀이 과정

각 시간대별로 입양이 몇 건이나 발생 

=> (각 시간대별) GROUP BY로 시간대 그룹

=> (몇 건) 고유값인 ANIMAL_ID를 COUNT하기 

 

09:00 부터 19:59 까지

=> where로 시간 조건을 걸어야 함 

=> 부터~까지니까 between 사용하면 될 것 같음 (and도 사용 가능)

 

시간대 순으로 정렬

=> ORDER BY

 

 

정답

MYSQL/AND

SELECT HOUR(DATETIME) AS HOUR, COUNT(ANIMAL_ID) AS COUNT
FROM ANIMAL_OUTS
WHERE HOUR(DATETIME) >8
AND HOUR(DATETIME) < 20
GROUP BY HOUR(DATETIME)
ORDER BY 1;

 

ORACLE/BETWEEN

SELECT TO_CHAR(DATETIME,'HH24') AS "HOUR"
        ,COUNT(ANIMAL_ID) AS "COUNT"
FROM ANIMAL_OUTS
WHERE TO_CHAR(DATETIME,'HH24') BETWEEN '09' AND '19'
GROUP BY TO_CHAR(DATETIME,'HH24')
ORDER BY 1

 

Comments