[SQL문제풀기] 가격대 별 상품 개수 구하기

silver's avatar
Jan 11, 2025
[SQL문제풀기] 가격대 별 상품 개수 구하기

문제

내가 작성한 정답

MYSQL, ORACLE

SELECT FLOOR(PRICE*0.0001)*10000 PRICE_GROUP, COUNT(PRODUCT_ID) PRODUCTS FROM PRODUCT GROUP BY FLOOR(PRICE*0.0001)*10000 ORDER BY PRICE_GROUP ASC;
 
 
💡
FLOOR : 소수점 아래자리 내림.
CEILING : 소수점 아래자리 올림.
ROUND(반올림할 컬럼,반올림 후 출력될 소수점 아래 자리수 개수) : 반올림할 자리수 지정하지 않으면 소수점 첫째 자리에서 반올림

다른 사람들이 작성한 정답

SELECT TRUNCATE(price, -4) price_group, COUNT(product_id) products FROM product GROUP BY 1 ORDER BY 1;
아래의 방식은 ORACLE에서는 적용되지 않음
💡
TRUNCATE(잘라낼 숫자, 잘라낼 자릿수) → TRUNCATE(12345, -2)는 12300으로 반환
💡
GROUP BY 1 → 여기에서 1은 select의 첫번째 항목인 TRUNCATE(price, -4)을 의미한다.
ORDER BY 1 → 도 마찬가지로 select의 첫번째 항목인 TRUNCATE(price,-4)를 의미한다.
 
Share article

silver