Oracle 的几种排名方式
? 在写oracle排名的时候,一开始我天真的认为,只要用rownum?去实现就可以了,然后我变这样写了
??SQL>??select?a.*,rownum?as?"名字"?from?emp?a;语句其运行效果如下:
EMPNO?ENAME?JOB?MGR?HIREDATE??SAL?COMM?DEPTNO名次?
EMPNO?ENAME?JOB?MGR?HIREDATE??SAL?COMM?DEPTNO名次?
EMPNO?ENAME?JOB?MGR?HIREDATE??SAL?COMM?DEPTNO名次?
EMPNO?ENAME?JOB?MGR?HIREDATE??SAL?COMM?DEPTNO名次?
EMPNO?ENAME?JOB?MGR?HIREDATE??SAL?COMM?DEPTNO名次?
?
?结果显示这个函数为我们进行了我们惯性思维认可的排名,但是我们怎样才能够实现上面做说的那种并列排名(好比两个第一下面再排就是第3没有第二);看下面这个函数
3.RANK?()
结果怎好是我们想要的那种排名,我想这样应该一目了然了吧(由于字数限制正解只要把函数换为rank()即可)