몸과 마음이 건전한 SW 개발자

프로그래머스 Lv. 2 가격대 별 상품 개수 구하기 SQL 본문

SQL

프로그래머스 Lv. 2 가격대 별 상품 개수 구하기 SQL

스위태니 2024. 1. 2. 23:16

문제 링크

https://school.programmers.co.kr/learn/courses/30/lessons/131530

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

정답 코드

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

Key Point

DATE_FORMAT 함수

문법 : TRUNCATE(number, decimal_places)

  • number: 잘라내고자 하는 숫자입니다.
  • decimal_places: 소수점 이하 몇 자리에서 잘라낼지 지정하는 부분입니다. 양수를 지정하면 소수점 아래 자릿수를, 음수를 지정하면 소수점 위 자릿수를 의미합니다.

 

설명 : TRUNCATE 함수는 SQL에서 숫자를 특정 소수점 자리에서 잘라내고, 나머지 부분을 버릴 때 사용됩니다. 이는 소수점 이하의 값을 특정 자리수로 제한하고자 할 때 유용합니다. 일반적으로 TRUNCATE는 반올림을 하지 않고 단순히 잘라냅니다.

  • 사용 방법: TRUNCATE 함수를 사용할 때는 숫자와 소수점 이하에서 잘라낼 위치를 지정합니다. 이 함수는 데이터베이스 시스템에 따라 약간씩 다를 수 있으므로, 사용하고 있는 시스템의 문서를 확인하는 것이 좋습니다.

예시 :

  1. 소수점 이하 자리수 잘라내기: 이 예시는 123.4567을 소수점 이하 두 번째 자리에서 잘라냅니다.
SELECT TRUNCATE(123.4567, 2);  -- 결과: 123.45
  1. 정수 부분에서 잘라내기: 이 예시는 123.4567을 십의 자리에서 잘라냅니다.
SELECT TRUNCATE(123.4567, -1); -- 결과: 120