› Spec
CPU: Apple M1 or Intel i5
RAM: 8GB
Storage: 256GB SSD
OS: macOS or Windows 11
Python: 3.11.5 and 3.8.7
Python_venv_path: Only /desktop/[folder]
IDE: Visual Studio Code
› Home › About › Categories › Guestbook

Categories : SQL

SQL 예시 - (11) 구간 GROUP화 (feat. GROUP BY)


  1. SQL 구간 GROUP화 예시
    1. 1. 나이 구간별 인원수 구하기
    2. 2. 월별(Year-Month) 매출 집계
    3. 3. 급여 구간별 직원수 구하기
    4. 4. 코드 설명

SQL 구간 GROUP화 예시

1. 나이 구간별 인원수 구하기

SELECT FLOOR(AGE / 10) * 10 AS AGE_GROUP, COUNT(*) AS PEOPLE
FROM USERS
GROUP BY AGE_GROUP
ORDER BY AGE_GROUP;


2. 월별(Year-Month) 매출 집계

SELECT DATE_FORMAT(SALE_DATE, '%Y-%m') AS SALE_MONTH, SUM(AMOUNT) AS TOTAL_SALES
FROM SALES
GROUP BY SALE_MONTH
ORDER BY SALE_MONTH;


3. 급여 구간별 직원수 구하기

SELECT FLOOR(SALARY / 1000000) * 1000000 AS SALARY_GROUP, COUNT(*) AS EMPLOYEES
FROM EMPLOYEES
GROUP BY SALARY_GROUP
ORDER BY SALARY_GROUP;


4. 코드 설명

구간 그룹화를 나타내게 하는 방법

FLOOR(9900 / 10000) * 10000 = 0

  • 9900 / 10000 를 진행 할 경우 답은 0.99
  • FLOOR 를 진행하면 0 을 반환 (내림)
  • 10000 을 곱하면 0 으로 지정됨, GROUP BY 을 진행하면 0의 그룹으로 속함

FLOOR(19000 / 10000) * 10000 = 1.9

  • 19000 / 10000 를 진행 할 경우 답은 1.9
  • FLOOR 를 진행하면 1 을 반환 (내림)
  • 10000 을 곱하면 10000 으로 지정됨, GROUP BY 을 진행하면 10000의 그룹으로 속함


확대 이미지