특정 항목에 대한 소계를 계산하는 함수 인자값으로 ROLLUP 이나 CUBE 사용 가능

| GROUPING SETS(A, B) | - A로 그룹핑

EX1. GROUPING SETS(A, B)

A별 그룹핑

SELECT ORDER_DT, ORDER_ITEM, COUNT(*)
FROM STARBUCKS_ORDER
GROUP BY GROUPING SETS(ORDER_DT, ORDER_ITEM)
ORDER BY ORDER_DT, ORDER_ITEM;

Untitled

여기에 총합계를 더하고 싶다면 인자값에 ()를 추가하거거나 ROLLUP을 적용하면 된다.

EX2. GROUPING SETS(A, B, ())

A별 그룹핑

SELECT ORDER_DT, ORDER_ITEM, COUNT(*)
FROM STARBUCKS_ORDER
GROUP BY GROUPING SETS(ORDER_DT, ORDER_ITEM, ())
ORDER BY ORDER_DT, ORDER_ITEM;

Untitled

EX3. GROUPING SETS(A, ROLLUP(B))

A별 그룹핑

SELECT ORDER_DT, ORDER_ITEM, COUNT(*)
FROM STARBUCKS_ORDER
GROUP BY GROUPING SETS(ORDER_DT, ROLLUP(ORDER_ITEM))
ORDER BY ORDER_DT, ORDER_ITEM;

Untitled

EX4. GROUPING SETS(A, B, C)