개발하자/ORACLE
사원의 급여 합계 ,평균 및 부서별 직원수 뽑기
i구야
2015. 2. 6. 10:59
SELECT deptno
, empno
, DECODE(GROUP_ID(), 0, NVL(ename,'합계'), DECODE(GROUP_ID(), 2, '부서인원', NVL(ename,'평균'))) ename
, DECODE(GROUP_ID(), 0, SUM(sal), DECODE(GROUP_ID(), 2, COUNT(ENAME) , ROUND(AVG(sal),2))) sal
, GROUPING(deptno) g1
, GROUPING(empno) g2
, GROUPING_ID(empno, ename) g3
, GROUP_ID() g4
FROM scott.emp
GROUP BY deptno, ROLLUP(deptno,DEPTNO,(empno, ename))
ORDER BY deptno, GROUP_ID(), empno;