SQL의 SUM 함수와 GROUP BY 절은 데이터베이스 쿼리에서 기본적인 도구입니다. 이 둘을 결합하면 특정 카테고리에 대한 합계를 쉽게 계산할 수 있습니다. 이 글에서는 SUM 함수와 GROUP BY 절의 기본부터 실제 SQL 쿼리 예제까지 자세히 설명합니다.
SUM 함수의 기본
SUM 함수는 지정된 열의 숫자 값을 합산하는 SQL 함수입니다. 예를 들어, 판매 데이터에서 총 매출을 계산할 때 사용됩니다. 기본 구문은 다음과 같습니다:
SELECT SUM(column_name) FROM table_name;
이 쿼리는 지정된 열의 모든 값을 합산합니다. 다음은 구체적인 예입니다.
SUM 함수 사용 예
예를 들어, sales
테이블에 판매 데이터가 있고 amount
열에 각 거래의 금액이 저장되어 있다고 가정합니다. 총 매출을 계산하려면 다음 쿼리를 사용하십시오:
SELECT SUM(amount) FROM sales;
이 쿼리는 sales
테이블의 amount
열에 있는 모든 값을 합산하여 총 매출을 반환합니다.
GROUP BY 절의 기본
GROUP BY 절은 특정 열의 값을 기준으로 데이터를 그룹화하고 각 그룹에 대해 집계를 수행하는 데 사용됩니다. 이는 특정 카테고리의 합계나 평균을 계산하는 데 매우 유용합니다. 기본 구문은 다음과 같습니다:
SELECT column_name, aggregate_function(column_name) FROM table_name GROUP BY column_name;
이 쿼리는 지정된 열 값을 기준으로 데이터를 그룹화하고 각 그룹에 집계 함수를 적용합니다.
GROUP BY 절 사용 예
예를 들어, sales
테이블에 각 거래의 카테고리를 저장하는 category
열이 있다고 가정합니다. 카테고리별 거래 수를 계산하려면 다음 쿼리를 사용하십시오:
SELECT category, COUNT(*) FROM sales GROUP BY category;
이 쿼리는 sales
테이블의 category
열 값을 기준으로 데이터를 그룹화하고 각 카테고리의 거래 수를 계산합니다.
SUM 함수와 GROUP BY 절의 결합
SUM 함수와 GROUP BY 절을 결합하면 특정 카테고리에 대한 숫자의 합계를 계산할 수 있습니다. 이는 예를 들어, 판매 데이터를 분석하는 데 매우 유용합니다. 기본 구문은 다음과 같습니다:
SELECT column_name, SUM(numeric_column) FROM table_name GROUP BY column_name;
이 쿼리는 지정된 열 값을 기준으로 데이터를 그룹화하고 각 그룹에 대한 숫자 값을 합산합니다.
SUM 함수와 GROUP BY 절 사용 예
예를 들어, sales
테이블에 각 거래의 카테고리를 저장하는 category
열과 거래 금액을 저장하는 amount
열이 있다고 가정합니다. 각 카테고리의 총 매출을 계산하려면 다음 쿼리를 사용하십시오:
SELECT category, SUM(amount) FROM sales GROUP BY category;
이 쿼리는 category
열 값을 기준으로 데이터를 그룹화하고 각 카테고리의 amount
열 값을 합산하여 각 카테고리의 총 매출을 반환합니다.
실제 SQL 쿼리 예제
SUM 함수와 GROUP BY 절을 사용하여 카테고리별 합계를 계산하는 실제 SQL 쿼리 예제를 살펴보겠습니다. sales
테이블에 다음과 같은 데이터가 있다고 가정합니다:
sales
+----+----------+--------+
| id | category | amount |
+----+----------+--------+
| 1 | A | 100 |
| 2 | B | 200 |
| 3 | A | 150 |
| 4 | C | 250 |
| 5 | B | 300 |
+----+----------+--------+
각 카테고리(A
, B
, C
)의 총 매출(amount
)을 계산하려면 다음 쿼리를 사용하십시오:
SELECT category, SUM(amount) AS total_amount
FROM sales
GROUP BY category;
이 쿼리를 실행한 결과는 다음과 같습니다:
+----------+--------------+
| category | total_amount |
+----------+--------------+
| A | 250 |
| B | 500 |
| C | 250 |
+----------+--------------+
이 결과는 각 카테고리의 총 매출을 보여줍니다. 다음으로, 다중 집계를 수행하는 방법에 대해 논의하겠습니다.
고급 예제: 다중 집계 수행
SUM 함수와 GROUP BY 절을 사용하여 다중 집계를 동시에 수행할 수 있습니다. 이를 통해 각 카테고리에 대해 총 매출, 평균 매출, 거래 건수 등을 한 번에 조회할 수 있습니다.
다중 집계를 위한 SQL 쿼리 예제
예를 들어, sales
테이블에서 각 카테고리에 대한 총 매출(SUM
), 평균 매출(AVG
), 거래 건수(COUNT
)를 조회하려면 다음 쿼리를 사용하십시오:
SELECT category,
SUM(amount) AS total_amount,
AVG(amount) AS average_amount,
COUNT(*) AS transaction_count
FROM sales
GROUP BY category;
이 쿼리는 각 카테고리에 대해 다음 정보를 반환합니다:
total_amount
: 각 카테고리의 총 매출average_amount
: 각 카테고리의 평균 매출transaction_count
: 각 카테고리의 거래 건수
쿼리 실행 예제
다음과 같은 데이터가 있는 sales
테이블을 사용해 보겠습니다:
sales
+----+----------+--------+
| id | category | amount |
+----+----------+--------+
| 1 | A | 100 |
| 2 | B | 200 |
| 3 | A | 150 |
| 4 | C | 250 |
| 5 | B | 300 |
+----+----------+--------+
위 쿼리를 실행하면 다음과 같은 결과가 나타납니다:
+----------+--------------+----------------+-------------------+
| category | total_amount | average_amount | transaction_count |
+----------+--------------+----------------+-------------------+
| A | 250 | 125.00 | 2 |
| B | 500 | 250.00 | 2 |
| C | 250 | 250.00 | 1 |
+----------+--------------+----------------+-------------------+
이 결과는 각 카테고리의 총 매출, 평균 매출 및 거래 건수를 한 번에 보여줍니다.
결론
SUM 함수와 GROUP BY 절을 사용하여 SQL에서 카테고리별 합계를 계산하는 방법을 살펴보았습니다. 이 함수들을 결합하여 데이터베이스 분석을 효율적으로 수행할 수 있습니다. 기본 구문을 이해하고 실제 쿼리 예제와 다중 집계 예제를 참조하여 여러분의 데이터 분석에 적용해 보십시오. 이러한 SQL 기능을 활용하여 복잡한 데이터를 쉽게 집계하고 필요한 정보를 빠르게 얻을 수 있습니다.