본문 바로가기
Database

ROLLUP, GROUPING SETS, CUBE 간단 정리 (SQL 그룹함수)

by SuldenLion 2024. 3. 9.
반응형

 

ROLLUP, GROUPING SETS, CUBE는 데이터 웨어하우스나 OLAP(온라인 분석처리) 시스템에서 다차원 집계를 수행하기 위한 SQL 구문의 일부이며 데이터를 그룹화하고 집계화하는데 사용됨.

 

 

ROLLUP

- ROLLUP은 계층적으로 데이터를 집계하는데 사용됨

- 지정된 열들에 따라 다양한 수준의 합계 또는 총계를 계산함

- ROLLUP 사용시 데이터의 계층적 구조를 사용하여 합계를 생성할 수 있음

- 전체, 그룹별, 하위 합계 및 합계 생성 가능

 

-- ROLLUP 예제
SELECT year, month, SUM(sales)
FROM sales_table
GROUP BY ROLLUP(year, month);

↳ 연도와 월의 합계 계산

 

 

GROUPING SETS

- GROUPING SETS는 집계를 수행할 여러 그룹을 명시적으로 지정하는데 사용됨

- 개별적인 그룹화 열의 집계 결과를 반환함

- 여러 그룹별로 집계할 수 있으며, 필요에 따라 그룹의 조합 지정 가능

 

-- GROUPING SETS 예제
SELECT year, month, SUM(sales)
FROM sales_table
GROUP BY GROUPING SETS ((year), (month), (year, month));

↳ 연도별, 월별, 연도 및 월별 합계 계산

 

 

CUBE

- CUBE는 가능한 모든 그룹 조합에 대한 집계 결과를 반환하는데 사용

- 모든 가능한 차원 조합에 대한 집계 생성

- 데이터 큐브 형태의 다차원 집계를 생성할 수 있으며, 다양한 관점에서 데이터 분석 가능

 

-- CUBE 예제
SELECT year, month, region, SUM(sales)
FROM sales_table
GROUP BY CUBE (year, month, region);

모든 가능한 조합에 대한 합계 계산

반응형

'Database' 카테고리의 다른 글

DB 정리 - 데이터 모델과 성능  (1) 2023.10.31
DB 관련 정리 - 데이터 모델링  (2) 2023.10.04

댓글