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;
'개발하자 > ORACLE' 카테고리의 다른 글
컬럼 가로세로 바꾸기 (0) | 2015.02.09 |
---|---|
동일 컬럼값 안보여주기 (0) | 2015.02.06 |
학년별로 가공후 중복된 칼럼 이름 안보이게 하기(3가지 풀이법) (0) | 2015.02.06 |
sql문장의 구성요소와 db객체 (0) | 2015.01.12 |
뇌자극 6장 함수정리 (0) | 2015.01.11 |