MySQL SUM() 함수로 열의 전체 합계 구하기
MySQL에서 특정 열에 있는 모든 행의 값을 더하려면 집계 함수인 SUM()을 사용하면 됩니다. 이번 글에서는 예제 테이블을 만들고, 데이터를 삽입한 뒤 SUM() 함수를 활용해 전체 합계를 구하는 과정을 단계별로 살펴보겠습니다.
1단계: 테이블 생성
먼저 아래와 같이 테이블을 생성합니다.
mysql> create table DemoTable
(
Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Amount int
);
Query OK, 0 rows affected (0.20 sec)위 쿼리는 자동 증가되는 기본키(Id)와 정수형 Amount 컬럼으로 구성된 DemoTable을 생성합니다.
2단계: 데이터 삽입
INSERT 명령어를 사용해 몇 개의 레코드를 추가합니다.
mysql> insert into DemoTable(Amount) values(50); Query OK, 1 row affected (0.07 sec) mysql> insert into DemoTable(Amount) values(60); Query OK, 1 row affected (0.04 sec) mysql> insert into DemoTable(Amount) values(70); Query OK, 1 row affected (0.10 sec)
3단계: 저장된 데이터 확인
SELECT 문으로 테이블의 모든 레코드를 조회합니다.
mysql> select *from DemoTable;
실행 결과는 다음과 같습니다.
+----+--------+ | Id | Amount | +----+--------+ | 1 | 50 | | 2 | 60 | | 3 | 70 | +----+--------+ 3 rows in set (0.00 sec)
4단계: SUM() 함수로 전체 합계 계산
이제 MySQL에서 모든 행의 합계를 구하는 쿼리를 실행합니다.
mysql> select sum(Amount) from DemoTable;
결과는 다음과 같습니다.
+-------------+ | sum(Amount) | +-------------+ | 180 | +-------------+ 1 row in set (0.00 sec)
정리
위 예제에서 확인할 수 있듯이, SELECT SUM(컬럼명) FROM 테이블명; 형태의 간단한 쿼리만으로 해당 열의 모든 값(50 + 60 + 70 = 180)을 한 번에 계산할 수 있습니다. SUM() 함수는 WHERE 절과 함께 사용하면 조건에 맞는 행만 골라 합계를 구하는 것도 가능하므로, 실무에서 통계나 집계 작업 시 매우 유용하게 활용됩니다.