감자의 개발공부 일지

[PostgreSQL] 데이터 집계 처리, 집계 함수로 데이터 분석 효율화하기(COUNT, SUM, AVG, MAX, MIN, GROUP BY) 본문

DB

[PostgreSQL] 데이터 집계 처리, 집계 함수로 데이터 분석 효율화하기(COUNT, SUM, AVG, MAX, MIN, GROUP BY)

Elie_J 2025. 3. 19. 13:46
반응형

1. 집계함수 문법과 사용법

SELECT 집계_함수(컬럼명)
FROM 테이블명
WHERE 조건
GROUP BY 그룹화_컬럼
ORDER BY 정렬_기준;

 

 

2. 주요 집계 함수

(1) COUNT

-> 특정 조건을 만족하는 데이터의 갯수 (레코드의 갯수를 셈)

-> 주요사용 : 고객세분화 및 타겟 마케팅

 

예시

SELECT COUNT(*) 
FROM orders
WHERE status = 'completed';

-> orders 테이블에서 'completed' 상태의 주문 개수를 반환

 

결과

 count
--------
  250

 

 

(2) SUM

-> 특정 칼럼 값의 합계 구함

-> 주요사용 : 월별, 분기별 매출분석

 

예시 

SELECT SUM(total_amount)
FROM sales
WHERE order_date BETWEEN '2025-01-01' AND '2025-03-01';

-> sales 테이블에서 2025년 1월 1일부터 3월 1일까지의 총 매출액을 계산

 

결과

   sum
-----------
  500000.00

 

 

(3) AVG

-> 특정 컬럼의 평균값 구함

-> 주요사용 : 고객세분화 및 타겟 마케팅, 재고관리

 

예시

SELECT AVG(price)
FROM products;

-> proudcts 테이블의 평균 가격 반환

 

결과

     avg
-------------
   150.75

 

(4) MAX()/ MIN() 

-> 최댓값, 최솟값 구함

-> 주요사용 : 제품분석

 

예시

SELECT MAX(price), MIN(price)
FROM products;

-> products 테이블에서 가장 비싼 제품 가격과 가장 저렴한 제품 가격을 반환

 

 

결과

  max  | min
-------+------
 999.99| 19.99

 

 

(5) GROUP BY

-> 데이터 그룹화 후 집계 함수 적용

 

예시

SELECT category, AVG(price)
FROM products
GROUP BY category;

-> products 테이블에서 제품을 카테고리별로 그룹화하여 각 카테고리의 평균 가격을 구함.

 

결과

 category  |   avg
-----------+---------
Electronics|  300.50
Clothing   |  50.00

 

반응형