코딩테스트/프로그래머스

[MYSQL] 입양 시각 구하기 1 DATETIME, HOUR, HAVING, AND, COUNT

clamp 2022. 10. 12. 14:26

테이블 명

ANIMAL_OUTS 

 

속성

ANIMAL_ID

NAME

ANIMAL_TYPE

DATETIME

SEX_UPON_OUTCOME

 

보호소에서는 몇 시에 이뱡ㅇ이 가장 활발하게 일어나는지 알아보려한다. 09:00부터 19:59까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성해주세요. 이때 결과는 시간대 순으로 정렬해야 한다.

SELECT HOUR(DATETIME) AS HOUR, COUNT(DATETIME) AS COUNT
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING HOUR > 8 AND HOUR < 20
ORDER BY HOUR

* TYPE이 DATETIME인 데이터에서 시간만 추출하려면 HOUR을 사용한다.

SELECT문의 HOUR(DATETIME AS HOUR은 조회 결과 나온 열의 이름을 HOUR로 설정하겠단 뜻.

GROUP BY로 HOUR별로 묶고

GROUP으로 묶은 열에 조건을 주기위해 HABING을 사용한다.

ORDERBY로 시간대별로 정렬한다.