DATABASE/SQL 입문

집계 함수

nsh95 2024. 1. 1. 19:19

 

조건에 맞는 데이터 개수 세기 : COUNT, COUNT_BIG 함수

 

COUNT 함수가 반환하는 값은 INT 범위이고 COUNT_BIG 함수가반환하는 값은 BIGINT 범위이므로, 만약 데이터 개수가 21억개를

초과할 것으로 예상된다면 COUNT_BIG 함수를 사용한다.

 

SELECT COUNT(column_name) FROM 테이블명

 

 

 

 

데이터 합 구하기 : SUM 함수

 

SUM 함수는 모든 행의 값을 합하지만, DISTINCT 문을 조합해 중복값을 무시하고 고유값에만 SUM 함수를 적용할 수도 있다.

 

SELECT SUM (column_name) FROM 테이블명

 

입력 자료형 반환 자료형
tinyint int
smallint int
int int
bigint bigint
decimal(p,s) decimal(38,s)
money, smallmoney money
float, real float

 

 

 

데이터 평균 구하기 : AVG 함수

 

AVG 함수의 특징은 NULL 값을 무시한다는 것이다.

 

 

SELECT AVG(column_name) FROM 테이블명

 

입력 자료형 반환 자료형
tinyint int
smallint int
int int
bigint bigint
decimal(p,s) decimal(38, max(s,6))
money, smallmoney money
float, real float

 

 

 

 

최소값, 최대값 구하기 : MIN, MAX 함수

 

 

SELECT MIN(column_name) FROM 테이블명

 

 

 

부분합, 총합 구하기 : ROLLUP, CUBE 함수

 

부분합과 총합을 구하려면 GROUP BY 문을 ROLLUP 함수와 CUBE 함수에 조합한다.

SELECT column1, column2, SUM(value)
FROM table_name
GROUP BY ROLLUP(column1, column2);

 

SELECT column1, column2, SUM(value)
FROM table_name
GROUP BY CUBE(column1, column2);

 

 

모든 값의 표준편자 구하기 : STDEV, STDEVP 함수

 

STDEV 함수는 모든 값의 편차를, STDEVP 함수는 모집단의 표준편자를 구한다.

 

SELECT STDEV(column_name) FROM table_name;

 

 

SELECT STDEVP(column_name) FROM table_name;