MySQL에서 제공하는 SUM() 집계 함수를 사용하면 테이블에 저장된 수치 데이터의 총합을 계산하여 단 하나의 출력 행으로 간편하게 확인할 수 있습니다. 이는 특정 열 전체의 합계나 조건에 맞는 값들의 누적 값을 빠르게 파악해야 할 때 매우 유용합니다.
SUM() 함수 기본 사용 예시
예를 들어 'ratelist'라는 테이블에서 'price' 열의 전체 합계를 구하고 싶다면, 다음과 같이 SUM() 함수에 해당 열 이름을 인자로 넘겨주면 됩니다.
mysql> select SUM(price) as totalprice from ratelist; +------------+ | totalprice | +------------+ | 3237 | +------------+ 1 row in set (0.00 sec)
위 쿼리는 'ratelist' 테이블의 price 열에 있는 모든 값을 더한 결과인 3237을 하나의 행으로 반환합니다.
쿼리 동작 방식 살펴보기
SUM(price)는 price 열의 모든 값을 대상으로 합계를 계산하며, AS totalprice 부분은 결과 집계 열에 'totalprice'라는 별칭(alias)을 지정하여 출력 결과를 더 읽기 쉽게 만들어 줍니다. 별칭을 지정하지 않으면 열 이름이 그대로 'SUM(price)'로 표시됩니다.
알아두면 좋은 점
SUM() 함수는 NULL 값을 자동으로 무시하고 계산하기 때문에, 열에 NULL 데이터가 포함되어 있어도 정확한 합계를 얻을 수 있습니다. 또한 WHERE 절과 함께 사용하면 특정 조건을 만족하는 행만 대상으로 합계를 구할 수 있으며, GROUP BY 절과 함께 사용하면 범주별로 나뉜 여러 개의 합계 행을 한 번에 조회할 수도 있습니다.