[sql] SQL 데이터베이스 테이블 그룹화

SQL 데이터베이스에서 테이블을 그룹화하여 효과적으로 데이터를 분석하고 관리할 수 있습니다. 이번 블로그에서는 테이블 그룹화에 대해 알아보겠습니다.

1. 그룹화 기능 소개

테이블 그룹화는 데이터를 주어진 기준에 따라 그룹으로 묶는 것을 말합니다. 이를 통해 특정 기준에 따른 집계, 필터링, 순위 부여 등 다양한 분석 작업을 수행할 수 있습니다.

2. GROUP BY 구문

SQL에서 테이블 그룹화를 위해 가장 많이 사용되는 구문은 GROUP BY입니다. 이를 사용하여 특정 열을 기준으로 데이터를 그룹화할 수 있습니다. 아래는 기본적인 GROUP BY의 구문입니다.

SELECT column1, aggregate_function(column2)
FROM table
GROUP BY column1;

3. HAVING 구문

그룹화된 데이터에 대한 추가적인 조건을 적용해야 할 때 HAVING 구문을 사용합니다. 이를 통해 그룹화된 결과에 대한 필터링을 수행할 수 있습니다.

SELECT column1, aggregate_function(column2)
FROM table
GROUP BY column1
HAVING condition;

4. 예제

아래는 실제 데이터와 쿼리를 사용한 예제입니다.

-- 사용자별로 주문한 상품 수를 구하는 쿼리
SELECT user_id, COUNT(order_id) AS order_count
FROM orders
GROUP BY user_id
HAVING COUNT(order_id) > 1;

위 예제에서는 orders 테이블을 사용자별로 그룹화하고, 주문한 상품 수가 1보다 큰 경우를 필터링하여 결과를 얻고 있습니다.

마치며

테이블 그룹화를 통해 다량의 데이터를 효과적으로 관리하고 분석할 수 있습니다. GROUP BYHAVING 구문을 사용하여 원하는 결과를 쉽게 얻을 수 있으니, 데이터 분석에 활용하기 바랍니다.

참고 문헌: MySQL 공식 문서