[sql] SQL HAVING 절을 사용하여 그룹화된 데이터 중 평균값 조회하기

일반적으로 그룹 함수는 SQL의 GROUP BY 절과 함께 사용되는데, HAVING 절을 사용하면 GROUP BY로 그룹화된 결과물에서 원하는 조건을 추가적으로 필터링할 수 있습니다.

우선, 아래의 예제에서는 ‘orders’ 테이블에서 고객별 주문 총액이 100보다 큰 고객들의 평균 주문 총액을 조회하는 방법에 대해 알아보겠습니다.

SELECT customer_id, AVG(order_amount) AS avg_order_amount
FROM orders
GROUP BY customer_id
HAVING AVG(order_amount) > 100

위의 SQL 쿼리에서는 먼저 orders 테이블을 customer_id로 그룹화하고, 각 그룹별로 주문 총액의 평균을 구한 후, HAVING 절을 사용하여 평균 주문 총액이 100을 초과하는 결과만을 조회합니다.

이와 같이 SQL의 HAVING 절을 활용하면 GROUP BY로 그룹화된 데이터 중에서 원하는 조건을 가진 데이터를 손쉽게 필터링할 수 있습니다.

더 자세한 내용은 SQL HAVING 절 문서를 참고하시기 바랍니다.