그룹 별 산출한 결과 값의 집계를 계산하는 함수
(GROUP BY절에서만 작성)
<예시1>
EMPLOYEE 테이블에서 각 부서에 소속된 직급 별
급여합, 부서 별 급여 합, 전체 직원 급여 총합 조회
SELECT DEPT_CODE, JOB_CODE, SUM(SALARY)
FROM EMPLOYEE
GROUP BY ROLLUP(JOB_CODE, DEPT_CODE)
ORDER BY 1;
(질의 결과)
D1 J7 1380000
D1 J6 6440000
D2 J4 6520000
.
.
.
J2 9700000
70096240
J1 8000000
<예시2>
EMPLOYEE 테이블에서 각 부서마다 직급별
급여함, 부서 전체 급여 합
SELECT DEPT_CODE, JOB_CODE, SUM(SALARY)
FROM EMPLOYEE
GROUP BY CUBE(DEPT_CODE, JOB_CODE)
ORDER BY 1;
(질의 결과)
D1 J6 6440000
D1 J7 1380000
D1 7820000
.
.
.
J7 8070000
5210000
70096240
----------------------------------------------
위 결과는 ROLLUP 결과<예시1>에 아래 두 SQL문의 결과가
추가된 것이다.
SELECT JOB_CODE, SUM(SALARY)
FROM EMPLOYEE
GROUP BY JOB_CODE
ORDER BY JOB_CODE;
SELECT SUM(SALARY)
FROM EMPLOYEE
WHERE DEPT_CODE IS NULL;