[sql] 집계 함수를 활용한 데이터 정렬

본 포스트에서는 SQL에서 집계 함수를 활용하여 데이터를 분류하고 정렬하는 방법에 대해 알아보겠습니다.

1. GROUP BY를 활용한 데이터 그룹핑

SELECT department, SUM(salary) AS total_salary
FROM employees
GROUP BY department
ORDER BY total_salary DESC;

위의 예시에서는 employees 테이블을 department 항목을 기준으로 그룹핑하고, 각 그룹의 salary를 합산하여 total_salary로 표시해줍니다. 이후에 ORDER BY 절을 사용하여 total_salary를 기준으로 내림차순으로 정렬합니다.

2. HAVING으로 그룹핑 된 데이터 필터링

SELECT department, COUNT(*) AS employee_count
FROM employees
GROUP BY department
HAVING COUNT(*) > 5;

위의 예시에서는 employees 테이블을 department 항목을 기준으로 그룹핑하고, 각 그룹의 레코드 수를 카운트하여 employee_count로 표시합니다. 이후 HAVING 절을 사용하여 employee_count가 5명 이상인 그룹만을 필터링합니다.

3. 집계 함수와 함께 정렬을 활용한 데이터 분류

SELECT department, AVG(salary) AS avg_salary
FROM employees
GROUP BY department
ORDER BY avg_salary DESC;

위의 예시에서는 employees 테이블을 department 항목을 기준으로 그룹핑하고, 각 그룹의 salary의 평균을 계산하여 avg_salary로 표시합니다. 이후 ORDER BY 절을 사용하여 avg_salary를 기준으로 내림차순으로 정렬합니다.

결론

집계 함수를 활용하여 데이터를 그룹핑하고 정렬함으로써 효율적인 데이터 분류와 요약이 가능합니다. 데이터베이스 사용 시, 이러한 기능을 적절히 활용하면 원하는 형태로 데이터를 손쉽게 정리하고 분석할 수 있습니다.

참고문헌: SQL 집계 함수