GROUP BY 절
SELECT 상품ID, 월, SUM(매출액) AS 매출액
FROM 월별매출
GROUP BY 상품ID, 월;

ROLLUP
- 소그룹 간 합계, 소계 로우 추가, total 로우 마지막에 추가됨
- 인자로 주어진 컬럼의 순서에 따라 다른 결과를 추출하게 됨
- 맨 처음 명시한 컬럼에 대해서만 소계 계산, 상품ID
SELECT 상품ID, 월, SUM(매출액) AS 매출액
FROM 월별매출
GROUP BY ROLLUP(상품ID, 월);

CUBE
- 다차원적인 소계, GROUP BY절에 명시한 모든 컬럼에 대해 합계, 소계 계산
SELECT 상품ID, 월, SUM(매출액) AS 매출액
FROM 월별매출
GROUP BY CUBE(상품ID, 월);

GROUPING SETS
SELECT 상품ID, 월, SUM(매출액) AS 매출액
FROM 월별매출
GROUP BY GROUPING SETS(상품ID, 월);

GROUPING
- 집계함수들을 지원하는 함수
- 집계로 생긴 로우는 1의 값을 갖고 그렇지 않은 결과는 0을 가짐.
SELECT
CASE GROUPING(상품ID) WHEN 1 THEN '모든 상품ID' ELSE 상품ID END AS 상품ID,
CASE GROUPING(월) WHEN 1 THEN '모든 월' ELSE 월 END AS 월,
SUM(매출액) AS 매출액
FROM 월별매출
GROUP BY ROLLUP(상품ID, 월);
