데이터베이스 GROUP BY와 집계

SQL의 GROUP BY와 집계 함수를 활용한 데이터 그룹화 및 분석 방법을 정리한다.

그룹화 및 집계 함수 활용

GROUP BY를 통해 기준별로 데이터를 분류하고 집계 함수를 적용하여 통계 정보를 산출한다.

-- 부서별 통계 산출 쿼리
SELECT dept_name, 
       AVG(salary) AS avg_sal, 
       COUNT(*) AS emp_count
FROM employees
GROUP BY dept_name
HAVING AVG(salary) >= 3000 -- 집계 결과 필터링
ORDER BY avg_sal DESC;

부서별 통계 산출 및 조건부 필터링이 가능하다.

WHEREHAVING의 역할 구분이 중요하다.

WHERE와 HAVING의 차이점

  • WHERE: 데이터 그룹화 수행 전 개별 행에 조건을 적용한다.
  • HAVING: 그룹화 및 집계 완료 후 결과 값에 조건을 적용한다.

개별 데이터 선별 시에는 WHERE를, 집계 결과 기반 필터링 시에는 HAVING을 사용한다.

COUNT, SUM, AVG 등의 집계 함수와 GROUP BY의 조합은 대규모 데이터 분석에 효과적인 것 같다.

Author avatar

웨이호프

WordPress creator and blogger.

View all posts