TOP-N 分析

开发工具与关键技术:PLSQL Developer
作者:林江
撰写时间:2019年3月21
例子:
查询工资最高的排名6-10的员工;
查询工资最高的排名6-10的员工,我们可以先把题目拆开,首先查询‘工资最高’,代码如下:
在这里插入图片描述
在查询‘工资最高’是 使用了 ORDER BY … DESC 即按照 ‘salary’倒序排序,这样可以一目了然的了解到工资的情况;
其次查询‘排名’,在这里我们可以使用伪列,rownum,代码如下:
在这里插入图片描述
既然排序都排好了,自然就开始查询‘6-10’,也就是利用WHERE 条件查询:
在这里插入图片描述
查询条件为: WHERE rownum <=10 and rownum >=0,但所查询出来的是没这结果的,请注意:ROWNUM 只能用 ‘<’,‘<=’而不能用 ‘>’,‘>=’,否则将不放回任何数据!
最后的解决办法就是把之前查询到的当做一个伪表,即:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44548195/article/details/89062150