[프로그래머스 Level.2] 가격대 별 상품 개수 구하기

오형상·2024년 5월 8일
0

프로그래머스_SQL

목록 보기
1/10
post-thumbnail

문제

가격대 별 상품 개수 구하기

소스코드

SELECT TRUNCATE(PRICE,-4) AS PRICE_GROUP, COUNT(PRODUCT_ID) AS PRODUCTS
FROM PRODUCT
GROUP BY PRICE_GROUP
ORDER BY PRICE_GROUP

배운점

- TRUNCATE

TRUNCATE(숫자, 버릴_자릿수) 함수는 숫자의 소수점 자릿수를 버리는 데 사용됩니다. 양수 자릿수를 제공하면, 해당 자릿수까지의 소수점 이하 숫자를 유지하고 나머지를 버립니다. 반면에 음수 자릿수를 제공하면, 해당 자릿수만큼 소수점 왼쪽의 숫자를 버리게 됩니다.

-- TRUNCATE(숫자, 버릴_자릿수)

SELECT TRUNCATE(123.456789, 2); -- 123.45
SELECT TRUNCATE(987.654321, 1); -- 987.6
SELECT TRUNCATE(1234.56789, -3); -- 1000
SELECT TRUNCATE(9876.54321, -2); -- 9800

의문점

SQL 실제 실행 순서는 FROM > ON > JOIN > WHERE > GROUP BY > HAVING > SELECT > DISTINCT > ORDER BY 이다.
그럼 GROUP BY가 실행되는 시점에는 PRICE_GROUP이 존재하지 않을텐데 어떻게 정상 작동하는 걸까?

GROUP BY에서 SELECT Alias 사용

0개의 댓글

Powered by GraphCDN, the GraphQL CDN