오라클 그룹별 소계 합계 구하기 (ROLLUP, CUBE)
1. ROLLUP
ROLLUP은 그룹별로 소계 및 합계를 구할 수 있는 오라클의 집계 함수입니다. ROLLUP 함수는 GROUP BY 구문에 사용되며, 계층적인 그룹 소계 및 합계를 생성합니다.
구문:
SELECT column1, column2, ..., aggregate_function(column)
FROM table
GROUP BY ROLLUP (column1, column2, ...)
column1, column2
등은 그룹화할 기준 컬럼이며, 여러 개의 컬럼을 지정할 수 있습니다.aggregate_function(column)
은 해당 컬럼에 대해 계산할 집계 함수를 지정합니다. 여러 개의 컬럼과 집계 함수를 함께 사용할 수도 있습니다.
2. CUBE
CUBE는 ROLLUP과 유사한 기능을 제공하지만, ROLLUP과 달리 모든 가능한 조합에 대한 집계 결과를 생성합니다. 즉, 모든 차원에 대한 소계와 합계를 제공합니다.
구문:
SELECT column1, column2, ..., aggregate_function(column)
FROM table
GROUP BY CUBE (column1, column2, ...)
column1, column2
등은 그룹화할 기준 컬럼이며, 여러 개의 컬럼을 지정할 수 있습니다.aggregate_function(column)
은 해당 컬럼에 대해 계산할 집계 함수를 지정합니다. 여러 개의 컬럼과 집계 함수를 함께 사용할 수도 있습니다.
마무리
ROLLUP과 CUBE는 오라클에서 그룹별 소계 및 합계를 구할 때 유용한 함수입니다. ROLLUP은 계층적인 그룹 소계와 합계를 생성하며, CUBE는 모든 가능한 차원에 대한 집계 결과를 생성합니다. 이를 통해 데이터를 좀 더 다양한 관점에서 분석하고 집계할 수 있습니다.
댓글