【Oracle】Oracle数据库,第二大数据取值
作者:互联网
Oracle数据库笔记,第二大数据取值
要显示第二大的数据可以使用order by进行排序,然后用limit对显示的数据进行限制,limit1,1,以此来限制显示内容
但是这个在mysql可以用的
在Oracle中limit是不能用的
所以需要使用rownum这个虚列作为行号来用
如取出来第二大数据的方式可以用下面的操作实现
select nvl(
(select l.salary from (select t.salary,rownum req
from (select distinct salary from employee order by salary desc) t) l
where l.req > 1 and l.req < 3)
,NULL) as SecondHighestSalary from dual
使用rownum的时候有几个注意的地方
首先使用rownum一般来说都是小于号<相伴的,使用>的情况可能会一条数据都查不到,然后导致问题的发生
但是将其作为子查询来使用的话就不会有这种情况发生
标签:salary,数据,数据库,req,Oracle,rownum,取值,select 来源: https://www.cnblogs.com/jokingremarks/p/16286174.html