https://school.programmers.co.kr/learn/courses/30/lessons/59412
[1차코드]
DATETIME에서 시간을 가져오고, 시간에 따른 입양 수를 세야하므로 GROUP BY와 COUNT를 함께 사용해야 할것같았음
SELECT HOUR(datetime) AS hour,
COUNT(*) AS count
FROM animal_outs
GROUP BY hour
ORDER BY hour
근데 틀렸다 ... 왜지 ???
왜냐하면 문제를 똑바로 읽지 않았기 때문이다 !!!
09:00 ~ 19:59 사이에 발생한 입양 건수에 대해서만 데이터를 뽑아야 한다
GROUP BY를 이용해 데이터를 집계해둔 상태이기 때문에, 데이터를 필터링하기 위해선 HAVING 함수를 사용해야 한다.
GROUP BY절 바로 다음에 HAVING 절이 나와줘야 한다.
ORDER BY를 가장 마지막에 사용해야 한다.
SELECT HOUR(datetime) AS hour,
COUNT(*) AS count
FROM animal_outs
GROUP BY hour
HAVING hour < 20
AND hour >= 9
ORDER BY hour
'SQL > 문제풀이' 카테고리의 다른 글
[프로그래머스] 3월에 태어난 여성 회원 목록 출력하기 (0) | 2023.12.27 |
---|---|
[프로그래머스] 동명 동물 수 찾기 (0) | 2023.12.27 |
[프로그래머스] 가격대별 상품 개수 구하기 (0) | 2023.12.26 |
[프로그래머스] 즐겨찾기가 가장 많은 식당 정보 출력하기 (0) | 2023.12.26 |
[프로그래머스] 상위 n개 레코드 (0) | 2023.12.22 |