以下所涉及的表,请查看Oracle进阶(三)常用函数的附表。
1、 需求
假设初始结果集为每个部门的职位总薪资:
--1. CASE WHEN/DECODE
SELECT DEPTNO,JOB,SUM(SAL) AS SAL FROM EMP
GROUP BY DEPTNO,JOB
ORDER BY DEPTNO,JOB
最终想要展示的结果如下:
2、思路
2.1 CASE WHEN / DECODE
--CASE WHEN
SELECT DEPTNO,
SUM(CASE WHEN JOB = 'CLERK' THEN SAL ELSE NULL END) AS CLERK,
SUM(CASE WHEN JOB = 'SALESMAN' THEN SAL ELSE NULL END) AS SALESMAN,
SUM(CASE WHEN JOB = &#