그룹함수
- ANSI/ISO SQL 표준 데이터 분석용 함수
- AGGREGATE FUNCTION (집계함수)
- GROUP FUNCTION (그룹 함수)
- WINDOW FUNCTION (윈도우 함수)
집계함수
COUNT
- 행의 개수를 카운트
- 특정 컬럼만 카운트 할 경우, null 값은 카운트 안함
SUM
AVG
MIN / MAX
- 최대, 최소 출력
- 날자, 숫자, 문자 모두 사용 가능
VARIANCE / STDDEV
- 분산, 표준편차 출력
+) 분산 = 표준편차 * 표준편차
그룹함수
- ORDER BY 절에 정렬 컬럼을 명시하여 정렬 가능
ROLLUP 함수
... GROUP BY ROLLUP (NAME)
-> NAME으로 그룹핑한 결과 + 전체 합계(총합) 를 한 번에 같이 구함
-> 그룹핑 컬럼의 수 +1의 개수가 나옴
- 인수가 여러개 일때, 순서 바뀌면 결과도 바뀜 (계층 구조)
ROLLUP(컬럼1, (컬럼2,컬럼3)) -> 컬럼 2,3을 하나의 집합으로 봄 -> 컬럼 2,3은 각 합계를 구하지 않음
GROUPING 함수
- ROLLUP, CUBE로 소계가 있으면 1, 없으면 0
-> 그러니까 합계를 구할 수 없는 부분 (이름 같은 문자열)에서 사용해서 그냥 null로 나올걸 이름들 < 같이 값으로 바꿀 수 있다.
- CASE나 DECODE와 같이 씀
CUBE 함수
- 결합 가능한 값들에 다차원 집계 생성
-> 모든 경우에 대한 소계를 만든다 (약간 RollUp 확장판)
- 순서 상관 없음
GROUPING SETS 함수
- 각 소그룹별 소계 출력
- 총계는
GROUP BY GROUPING SETS(A, B, NULL)로 구할 수 있음 (null없으면 총계는 안 생김)
- 순서 상관 없음