728x90
01. 집계 함수(Aggregate Function)
집계 함수의 특성
- 여러 행들의 그룹이 모여서 그룹당 단 하나의 결과를 돌려주는 함수이다
- GROUP BY 절은 행들을 소그룹화 한다
- SELECT 절, HAVING 절, ORDER BY 절에 사용할 수 있다
집계함수명 ([DISTINCT | ALL] 칼럼이나 표현식)
-- ALL: Default 옵션으로 생략 가능함
-- DISTINCT: 같은 값을 하나의 데이터로 간주할 때 사용하는 옵션
집계 함수의 종류
집계 함수 | 설명 |
COUNT(*) | NULL 값을 포함한 행의 수 출력 |
COUNT(표현식) | 표현식 값 중 NULL 값을 제외한 행의 수 출력 |
SUM | 총 합계 |
AVG | 평균 |
MAX | 최댓값 (문자, 날짜, 숫자 가능) |
MIN | 최솟값(문자, 날짜, 숫자 가능) |
STDDEV | 표준편차 |
VARIAN | 분산 |
02. GROUP BY 절
데이터들을 작은 그룹으로 분류하여 소그룹에 대한 항목별로 통계 정보를 출력
SELECT [DISTINCT] 칼럼명 [ALIAS명]
FROM 테이블명
[WHERE 조건식]
[GROUP BY 칼럼이나 표현식]
[HAVING 그룹조건식];
03. HAVING 절
GROUP BY 절의 기준 항목이나 소그룹의 집계 함수를 이용한 조건을 표시할 수 있다.
HAVING 절은 일반적으로 GROUP BY절 뒤에 위치한다.
💡 GROUP BY절과 HAVING절의 특성
- GROUP BY절을 통해 소그룹별 기준을 정한 후, SELECT 절에 집계 함수를 사용한다
- 집계 함수의 통계 정보는 NULL 값을 가진 행을 제외하고 수행한다
- GROUP BY절에서는 SELECT 절과 달리 ALIAS 명을 사용할 수 없다
- 집계 함수는 WHERE절에 올 수 없다 (집계 함수를 사용할 수 있는 GROUP BY절보다 WHERE절이 먼저 수행됨)
- WHERE절은 전체 데이터를 GROUP절의 기준 항목이나 소그룹의 집계 함수를 이용한 조건을 표시할 수 있다
- GROUP BY절에 의한 소그룹별로 만들어진 집계 데이터 중, HAVING절에서 제한 조건을 두어 조건을 만족하는 내용만 출력한다
728x90
'자격증 > SQLD' 카테고리의 다른 글
[SQLD] SQL 기본 - 조인 (0) | 2023.08.31 |
---|---|
[SQLD] SQL 기본 - ORDER BY 절, TOP() (0) | 2023.08.31 |
[SQLD] SQL 기본 - FUNCTION (0) | 2023.08.31 |
[SQLD] SQL 기본 - WHERE 절 (0) | 2023.08.30 |
[SQLD] SQL 기본 - TCL (Transaction Control Language) (0) | 2023.08.30 |