[SQL 코드카타] 가격대 별 상품 개수 구하기(MySQL)
2024. 9. 24. 22:12ㆍ[Node.js_6기 본캠프 TIL]
PRODUCT 테이블에서 만원 단위로 구간을 나눠, 상품 개수를 출력해야 하는 문제이다. 답안 예시를 보면 만원 단위로 절삭하여 그루핑을 한 것을 알 수 있다.
예를 들어, 9000원은 PRICE_GROUP 0에 해당하고 22000원은 PRICE_GROUP 20000에 해당되게 해야 하는 것이다.
BETWEEN으로 구간 별 분리를 해야하나? 그러면 모든 경우의 수를 다 지정해주어야 하는데, 그게 맞는 방법일까? 100만원짜리 상품이 있으면 어떻게 하지?
아무리 생각해도 만원 단위로 뒷자리를 절삭해주는 등의 방법이 있을 것 같았다. 그리고 정말 TRUNCATE( 테이블 명, - 절삭하려는 자릿수) 라는 간편한 방법이 있었다.
본 문제에서 4번째 자릿수까지 절삭해야 하기 때문에, TRUNCATE( PRICE, - 4) 를 사용하고 GROUP BY 로 묶어주면 간편하게 분류할 수 있었다.
▼ 정답 코드
SELECT TRUNCATE(PRICE, -4) AS PRICE_GROUP, COUNT(*) AS PRODUCTS FROM PRODUCT
GROUP BY PRICE_GROUP
ORDER BY PRICE_GROUP
'[Node.js_6기 본캠프 TIL]' 카테고리의 다른 글
[개념정리] 웹소켓이란? (0) | 2024.09.27 |
---|---|
CH 3 풋살 온라인 프로젝트 - 마무리 (2) | 2024.09.25 |
CH 3 풋살 온라인 프로젝트 - 트러블 슈팅 0923 (1) | 2024.09.23 |
CH 3 풋살 온라인 프로젝트 - 트러블 슈팅 0919 (0) | 2024.09.19 |
CH 3 풋살 온라인 프로젝트 - 트러블 슈팅 0913 (1) | 2024.09.13 |