728x90
문제
https://school.programmers.co.kr/learn/courses/30/lessons/131530
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
어떻게 풀었는가
핵심은 가격을 만원 단위 구간으로 묶는 것이다. 이를 위해 FLOOR 함수를 활용했다.
FLOOR(PRICE / 10000)을 하면 가격을 10000으로 나눈 뒤 소수점을 버리므로, 0~9999원은 0, 10000~19999원은 1, 20000~29999원은 2가 된다. 여기에 다시 10000을 곱하면 각 구간의 최소금액(0, 10000, 20000, …)이 나온다.
이렇게 만든 가격대를 GROUP BY로 묶고 COUNT(*)로 상품 수를 세면 끝이다.
코드
SELECT FLOOR(PRICE / 10000) * 10000 AS PRICE_GROUP,
COUNT(*) AS PRODUCTS
FROM PRODUCT
GROUP BY PRICE_GROUP
ORDER BY PRICE_GROUP
728x90
'Programmers' 카테고리의 다른 글
| [Programmers] Lv2. 다리를 지나는 트럭 Python 문제 풀이 (0) | 2026.02.20 |
|---|---|
| [Programmers] Lv2. 카테고리 별 상품 개수 구하기 MYSQL 문제 풀이 (0) | 2026.02.19 |
| [Programmers] Lv2. 쿼드압축 후 개수 세기 Python 문제 풀이 (0) | 2026.02.19 |
| [Programmers] Lv2. 우박수열 정적분 Python 문제 풀이 (0) | 2026.02.19 |
| [Programmers] Lv2. 숫자 카드 나누기 Python 문제 풀이 (0) | 2026.02.19 |