728x90
문제
PRODUCT 테이블에서 만원 단위의 가격대 별로 상품 개수를 출력하는 SQL 문을 작성해주세요. 이때 컬럼명은 각각 컬럼명은 PRICE_GROUP, PRODUCTS로 지정해주시고 가격대 정보는 각 구간의 최소금액(10,000원 이상 ~ 20,000 미만인 구간인 경우 10,000)으로 표시해주세요. 결과는 가격대를 기준으로 오름차순 정렬해주세요.
풀이
SELECT CASE
WHEN PRICE BETWEEN 0 AND 19999 THEN 10000
WHEN PRICE BETWEEN 20000 AND 29999 THEN 20000
WHEN PRICE BETWEEN 30000 AND 39999 THEN 30000
WHEN PRICE BETWEEN 40000 AND 49999 THEN 40000
WHEN PRICE BETWEEN 50000 AND 59999 THEN 50000
WHEN PRICE BETWEEN 60000 AND 69999 THEN 60000
WHEN PRICE BETWEEN 70000 AND 79999 THEN 70000
WHEN PRICE BETWEEN 80000 AND 89999 THEN 80000
END AS PRICE_GROUP,
COUNT(PRODUCT_ID) AS PRODUCTS
FROM PRODUCT
GROUP BY PRICE_GROUP
ORDER BY PRICE_GROUP
풀긴 풀었는데 모범 답안은 아닌 것 같다.
처음에 CASE문을 WHERE절 안에 써서 틀려서 Chat GPT의 도움을 받아 고쳤다. CASE문은 SELECT절 안에 써야 한다.
Lv.2 문제지만 Lv.2가 아닌 느낌...
728x90
'IT > SQL' 카테고리의 다른 글
[MySQL] 프로그래머스 IS NULL 02 이름이 없는 동물의 아이디 (0) | 2023.10.02 |
---|---|
[MySQL] 프로그래머스 IS NULL 01 경기도에 위치한 식품창고 목록 출력하기 (0) | 2023.10.02 |
[MySQL] 프로그래머스 GROUP BY 15 입양 시각 구하기(2) (0) | 2023.10.01 |
[MySQL] 프로그래머스 GROUP BY 14 년, 월, 성별별 상품 구매 회원 수 구하기 (0) | 2023.10.01 |
[MySQL] 프로그래머스 GROUP BY 13 입양 시각 구하기(1) (0) | 2023.10.01 |