如何使用分析函数进行行列转换

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/09 03:45:06
如何使用分析函数进行行列转换如何使用分析函数进行行列转换如何使用分析函数进行行列转换经常有朋友问到行列转换的问题,留言板上也有这样的提问.其实使用分析函数进行处理是很好的方式,翻一下Tom的书,将其中

如何使用分析函数进行行列转换
如何使用分析函数进行行列转换

如何使用分析函数进行行列转换
经常有朋友问到行列转换的问题,留言板上也有这样的提问. 其实使用分析函数进行处理是很好的方式,翻一下Tom的书,将其中的一个例子收录在这里. 比如查询scott.emp表的用户SAL排序信息,可以使用如下查询:SQL SELECT deptno, ename,2 ROW_NUMBER () OVER (PARTITION BY deptno ORDER BY sal DESC) seq3 FROM emp;DEPTNO ENAME SEQ---------- ---------- ----------10 KING 110 CLARK 210 MILLER 320 SCOTT 120 FORD 220 JONES 320 ADAMS 420 SMITH 530 BLAKE 130 ALLEN 230 TURNER 330 WARD 430 MARTIN 530 JAMES 614 rows selected.?再结合其他函数进行一下行列转换:SQL select deptno,? 2? max(decode(seq,1,ename,null)) highest,? 3? max(decode(seq,2,ename,null)) second,? 4? max(decode(seq,3,ename,null)) third? 5? from (? 6? select deptno,ename,? 7? row_number() over? 8? (partition by deptno order by sal desc) seq? 9? where seq