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

SQL에서 HAVING 절을 사용하여 그룹화된 데이터 중에서 최솟값을 조회하는 방법에 대해 알아보겠습니다.

HAVING 절 사용하기

HAVING 절은 GROUP BY로 그룹화된 결과에 대한 필터링을 수행하는 데 사용됩니다. 일반적으로 집계 함수와 함께 사용되어 특정 조건을 만족하는 그룹을 필터링합니다.

SELECT column_name, MIN(aggregated_column) AS min_value
FROM table_name
GROUP BY column_name
HAVING MIN(aggregated_column) = some_value;

위의 SQL 쿼리에서, HAVING 절은 특정 그룹 중에서 최솟값이 some_value와 같은 경우에만 해당 그룹을 반환합니다.

예를 들어, 아래의 예시는 주문된 제품의 최저 가격을 가진 고객을 찾는 쿼리입니다.

SELECT customer_id, MIN(order_amount) AS min_order_amount
FROM orders
GROUP BY customer_id
HAVING MIN(order_amount) < 100;

결론

HAVING 절은 그룹화된 데이터에 대한 조건부 필터링을 제공하여, 그룹 중에서 특정 조건을 만족하는 데이터만을 선택할 수 있게 해줍니다.

이를 활용하여 원하는 조건을 만족하는 그룹화된 데이터 중에서 최솟값을 효과적으로 조회할 수 있습니다.

참고 자료