https://school.programmers.co.kr/learn/courses/30/lessons/131530
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제 풀이
- 1만 원 미만대, 1만 원대, 2만 원대, 3만 원대... 이렇게 만원 단위로 구분하는 것이 중요하다.
- 일단 가격을 1만으로 나눈 몫으로 몇만 원대인지 알 수 있다. 이때 소수점이 나올 경우 소수점 이하는 별 의미가 없으므로 FLOOR 키워드로 소수점을 버린다. 그리고 몫의 1만을 곱하면 각 구간의 최소금액으로 표시할 수 있다.
- 이렇게 구한 각 구간의 최소금액으로 그룹핑한다.
- 각 구간의 최소금액과 COUNT 키워드로 그룹핑된 행의 개수를 조회한다.
- 가격대를 기준으로 오름차순 정렬한다.
SELECT
FLOOR((PRICE / 10000)) * 10000 AS PRICE_GROUP,
COUNT(*) AS PRODUCTS
FROM
PRODUCT
GROUP BY
1
ORDER BY
1'SQL > GROUP BY' 카테고리의 다른 글
| [프로그래머스 SQL] Lv.2 - 노선별 평균 역 사이 거리 조회하기 (0) | 2025.03.25 |
|---|---|
| [프로그래머스 SQL] Lv.2 - 조건에 맞는 사원 정보 조회하기 (0) | 2025.03.25 |
| [프로그래머스 SQL] Lv.2 - 입양 시각 구하기(1) (0) | 2025.03.24 |
| [프로그래머스 SQL] Lv.2 - 동명 동물 수 찾기 (0) | 2025.03.19 |
| [프로그래머스 SQL] Lv.2 - 고양이와 개는 몇 마리 있을까 (0) | 2025.03.19 |