[sql] 데이터의 그룹핑을 위한 스칼라 함수 (GROUP BY, HAVING 등)

SQL에서 데이터를 그룹화하고 집계하는데 사용되는 스칼라 함수(GROUP BY, HAVING)에 대해 알아보겠습니다.

GROUP BY

GROUP BY 절은 특정 열을 기준으로 데이터를 그룹화하는 데 사용됩니다. 이를 통해 그룹화된 데이터의 집계 연산을 수행할 수 있습니다. 예를 들어, 주문 데이터를 날짜별로 그룹화하고 각 날짜별 주문 수를 계산할 수 있습니다.

SELECT order_date, COUNT(*) AS order_count
FROM orders
GROUP BY order_date;

위의 예제에서 order_date 열을 기준으로 주문 데이터를 그룹화하고, 각 그룹별 주문 수를 order_count로 계산합니다.

HAVING

HAVING 절은 GROUP BY로 그룹화된 데이터에 대한 조건을 지정하는데 사용됩니다. WHERE 절은 개별 레코드에 대한 조건을 지정하는 반면, HAVING 절은 그룹화된 데이터에 대한 조건을 지정합니다.

SELECT product_id, SUM(quantity) AS total_quantity
FROM order_details
GROUP BY product_id
HAVING SUM(quantity) > 100;

위의 예제에서는 product_id로 그룹화된 각 제품의 주문 총 수량을 계산하고, 이 중에서 총 수량이 100을 초과하는 제품을 반환합니다.

이렇듯 GROUP BYHAVING 절을 활용하여 데이터를 그룹화하고 필요한 집계 연산을 수행할 수 있습니다.

요약

GROUP BYHAVING 절은 SQL에서 데이터 그룹화와 조건부 집계에 유용하게 활용되는 스칼라 함수입니다. 이를 통해 데이터를 더 의미 있게 분석하고 원하는 정보를 추출할 수 있습니다.

이상으로 SQL의 스칼라 함수에 대한 간단한 소개였습니다.

관련 참고 자료: