반응형
DATETIME 타입의 DATETIME의 시간(HOUR)을 구하기 위해서 HOUR() 함수를 사용하면 된다.
1) 각 시간대별로 건수 조회를 해야하므로 시간대별로 그룹화를 진행한다.
SELECT HOUR(DATETIME) HOUR, COUNT(ANIMAL_ID)
FROM ANIMAL_OUTS
GROUP BY HOUR
2) 각 그룹에 대한 조건이, 9시부터 19:59 사이라고 명시되어있다. 따라서 조건 추가.
-- HAVING 사용
SELECT HOUR(DATETIME) HOUR, COUNT(ANIMAL_ID)
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING (HOUR >= 9 AND HOUR < 20)
-- WHERE 사용
SELECT HOUR(DATETIME) HOUR, COUNT(ANIMAL_ID)
FROM ANIMAL_OUTS
WHERE (HOUR(DATETIME) >= 9 AND HOUR(DATETIME) < 20)
GROUP BY HOUR;
3) 시간대순으로 정렬
-- HAVING 사용
SELECT HOUR(DATETIME) HOUR, COUNT(ANIMAL_ID)
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING (HOUR >= 9 AND HOUR < 20)
ORDER BY HOUR(DATETIME);
-- WHERE 사용
SELECT HOUR(DATETIME) HOUR, COUNT(ANIMAL_ID)
FROM ANIMAL_OUTS
WHERE (HOUR(DATETIME) >= 9 AND HOUR(DATETIME) < 20)
GROUP BY HOUR
ORDER BY HOUR;
'SQL 이야기' 카테고리의 다른 글
프로그래머스 JOIN (1) - 없어진 기록 찾기 (0) | 2022.04.03 |
---|---|
JOIN 기초 개념 및 예제 (0) | 2022.04.03 |
프로그래머스 GROUP BY (2) - 동명 동물 수 찾기 (0) | 2022.04.02 |
프로그래머스 GROUP BY (1) - 고양이와 개는 몇 마리 있을까 (0) | 2022.04.02 |
GROUP BY 기초 예제 (0) | 2022.04.02 |
댓글