SELECT
(FLOOR(PRICE / 10000) * 10000) AS PRICE_GROUP,
COUNT(*) AS PRODUCTS
FROM
PRODUCT
GROUP BY
PRICE_GROUP
ORDER BY
PRICE_GROUP;
FLOOR(PRICE / 10000)은 PRICE를 10000으로 나눈 후 소수점 이하를 버린 정수값을 반환합니다. 즉, 가격을 만원 단위로 나눈 후 그 값의 소수점 이하를 버립니다. 예를 들어, 23000원이라면 2.3가 되고, FLOOR 함수를 적용하면 2가 됩니다.
그리고 이후에 * 10000을 하면 다시 10000을 곱해줌으로써, 버린 소수점 아래 자리를 없애고 10000의 배수로 만듭니다. 이를 통해 원하는 가격대의 최소 금액을 얻을 수 있습니다.
예를 들어, 23000원인 경우:
PRICE / 10000 = 2.3
FLOOR(2.3) = 2
2 * 10000 = 20000
따라서 PRICE_GROUP은 20000이 됩니다. 이것은 2만원 이상 3만원 미만의 가격대를 나타냅니다.
'ㅋㅌ' 카테고리의 다른 글
[SQL] WHERE 절 안에 WHERE ,,! (0) | 2023.09.14 |
---|---|
[SQL] 서브쿼리 사용 (0) | 2023.09.12 |
LEFT, GROUP BY (0) | 2023.09.10 |
[SQL] GROUP BY (1) | 2023.09.08 |
[SQL] 출력 순서 정렬 (0) | 2023.09.06 |