——row_number选择ename
,
,,,deptno,
,,,rownum,
,,,,row_number()在rn(由deptno顺序),
,,,,排名()/(ORDER BY deptno) rk,——跳号
,,,,dense_rank ()/(ORDER BY deptno) dense_rk——不跳号
,从emp,必须跟order by
,——row_number选择ename
,
,,,deptno,
,,,rownum,
,,,,row_number()/(分区通过deptno顺序deptno) rn,
,,,,排名()/(分区通过deptno顺序deptno) rk,,
,,,,dense_rank()/(分区通过deptno顺序deptno) dense_rk
,从emp
,——row_number选择ename
,
,,,deptno,
,,,rownum,
,,,,row_number()/(分区由萨尔deptno顺序)rn,
,,,,排名()/(分区由萨尔deptno顺序)rk,
,,,,dense_rank()/(分区由萨尔deptno顺序)dense_rk
,从emp
——求每个部门的最高工资
SELECT *
,(选择ename,
,,,,,,,deptno,
,,,,,,,rownum,
,,,,,,,,row_number()/(分区由萨尔deptno顺序DESC) rn
,,,,——排名()/(分区由萨尔deptno顺序)rk,
,,,,——dense_rank()/(分区由萨尔deptno顺序)dense_rk
,,,,,从emp)
,在rn=1
,总和,avg,马克斯,min
,选择ename,
,,,,deptno,
,,,,萨尔,
,,,,总和(sal)/(分区deptno)”部门汇总”,总和(sal)/()作为“全部汇总”
,,从emp;
——累加
选择ename,
,,,,deptno,
,,,,萨尔,
,,,,总和(sal)/(order BY sal)和(sal)/(order BY sal, rowid)
,,从emp;
,选择ename,
,,,,deptno,
,,,,萨尔,
,,,,avg (sal)/(分区deptno)”部门汇总”,avg (sal)/()作为“全部汇总”
,,从emp;
选择empno,
,,,ename,
,,,,萨尔
,从emp
,萨尔=(选择最小(sal)从emp b a.deptno=b.deptno)
——改写
SELECT *
,(
,,,,,
,,,,选择一个,*
,,,,,,,,row_number()/(分区通过a.deptno秩序a.sal) rn
,,,,,
,,,,,从emp)
,在rn=1
,
SELECT *
,从emp
,在萨尔(选择最小(sal)由萨尔deptno顺序(分区)从emp);