[DBMS]GROUPING SETS

Date:     Updated:

카테고리:

태그:

[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()와 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 카테고리 내 다른 글 보러가기

댓글 남기기