[14] GROUPING SETS
14.1. 그룹 함수 (GROUP FUNCTION)
- 특정 집합의 소계, 중계, 합계, 총 합계를 구할 수 있다.
- 이런 합계를 구하기 위해서는 다양한 노력들이 필요하나 그룹함수를 이용하여 간단하게 처리를 할 수 있다.
14.2. 그룹 함수 종류
- GROUPING SETS()
- 특정 항목에 대한 소계를 계산하는 기능이다.
- CUBE()
- 다차원적인 소계를 계산하는 기능이다.
- 결합 가능한 모든 값에 대해서 다차원 집계를 생성한다.
- CUBE 함수 내에 컬럼이 n개라면 2의 N제곱근만큼의 SUBTOTAL이 생성된다.
- ROLLUP()
- 소 그룹간의 소계를 계산하는 기능이다
- GROUPING 컬럼의 수가 N이라고 할 때 N+1의 SUBTOTAL이 생성된다.
- ROLLUP함수 내의 인자의 순서가 바뀌면 결과도 바뀌게 된다. (ROLLUP은 계층 구조이다.)
- CUBE()와 ROLLUP() 비교 (인자가 두 개인 경우)
- CUBE(C1, C2)
=> (C1, C2), (C1), (C2), ( ) - ROLLUP
=> (C1, C2), (C1), ( )
- CUBE(C1, C2)
- CUBE()와 ROLLUP() 비교 (인자가 세 개인 경우)
CUBE(C1, C2, C3) ROLLUP(C1, C2, C3) (C1, C2, C3) (C1, C2, C3) (C1, C2) (C1, C2) (C1, C3) (C2, C3) (C1) (C1) (C2) (C3) ( ) ( )
'DBMS' 카테고리의 다른 글
[DBMS] 분석함수 - LAG, LEAD, UNBOUNDED PRECEDING, CURRENT ROW, UNBOUNDED FOLLOWING (0) | 2023.03.27 |
---|---|
[DBMS]SUBQUERY - ANY, ALL, IN, EXISTS (0) | 2023.03.17 |
[DBMS]DBMS Review - JOIN, 데이터가공, 날짜, 문자, COUNT, MAX, MIN, AVG, SUM (0) | 2023.03.15 |
[DBMS]JOIN 2 - UNION, INTERSECT, EXCEPT (0) | 2023.03.14 |
[DBMS] COMMIT ROLLBACK - GROUP BY, UPSERT (0) | 2023.03.13 |
댓글