[sql] GROUP BY 절을 이용한 멀티레벨 그룹화

데이터베이스에서 GROUP BY 절을 사용하여 데이터를 그룹화하는 것은 매우 강력한 기능입니다. 그룹화를 통해 통계 및 집계 정보를 추출할 수 있습니다. 이번에는 GROUP BY 절을 이용하여 멀티레벨 그룹화를 수행하는 방법에 대해 알아보겠습니다. 멀티레벨 그룹화란 두 개 이상의 열을 기준으로 데이터를 그룹화하는 것을 의미합니다.

단일 레벨 그룹화

우선 단일 레벨 그룹화를 간단히 살펴보겠습니다. 아래의 예제는 orders 테이블을 customer_id 기준으로 그룹화한 것입니다.

SELECT customer_id, COUNT(*) as order_count
FROM orders
GROUP BY customer_id;

위의 쿼리는 orders 테이블의 각 고객별 주문 횟수를 구하는 것으로, customer_id로 그룹을 지어 주문 횟수를 카운트하고 있습니다.

멀티레벨 그룹화

이제 멀티레벨 그룹화를 살펴보겠습니다. 아래의 예제는 orders 테이블을 customer_idproduct_id 기준으로 그룹화한 것입니다.

SELECT customer_id, product_id, COUNT(*) as order_count
FROM orders
GROUP BY customer_id, product_id;

이렇게 하면 각 고객 및 제품별로 주문 횟수를 구할 수 있습니다. customer_idproduct_id 두 열을 기준으로 데이터를 그룹화하여 각 조합 별 주문 횟수를 구합니다.

멀티레벨 그룹화를 통해 더 세부적인 수준의 데이터 분석과 집계를 수행할 수 있습니다. 이를 활용하여 다양한 비즈니스 분석과 의사결정에 활용할 수 있습니다.

이처럼 GROUP BY 절을 활용하여 멀티레벨 그룹화를 수행할 수 있습니다. 데이터베이스 쿼리에서 이 기능을 적절히 활용함으로써 효과적인 데이터 분석 및 통계를 수행할 수 있습니다.