아래는 GROUPING SETS함수와 GROUP BY, UNION ALL을 이용하여 동일한 결과를 출력하는 예제이다.
-- GROUPING SETS 예제
SELECT deptno, job, SUM(sal)
FROM emp
GROUP BY GROUPING SETS(deptno, job);
-- GROUP BY와 UNION ALL을 이용한 예제
SELECT NULL deptno, job, SUM(sal)
FROM emp
GROUP BY job
UNION ALL
SELECT deptno, NULL job, SUM(sal)
FROM emp
GROUP BY deptno;
-- 조회결과
DEPTNO JOB SUM(SAL)
--------- ------------------ ----------
CLERK 4150
SALESMAN 5600
PRESIDENT 5000
MANAGER 8275
ANALYST 6000
30 9400
20 10875
10 8750
- 강좌 URL : http://www.gurubee.net/lecture/2680
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.
오오오옷!!
와 이거 @_@였는데 좀 쉽게 이해가 되네요.
UNION ALL을 이용한 예제결과를 보니 아하~ 하게되네요. ^^ㅋ
감사합니다!
쓰다가 보면 group_id() 가 필요한 순간이 올겁니다. 중복된 집계를 제거하기 위함이죠
cube 함수랑 다른 점이 무엇인가요..?