按时间排序后取第2大的时间,oracle怎么办
来源:百度知道 编辑:UC知道 时间:2024/06/09 04:12:22
在表中按时间从大到小排序后取第2大的那一行记录,怎么做?
PS:最大的那个时间有可能有2行
最大的时间就是最近的时间,可是最大的时间有可能是2行记录,即两行一样最大时间的
PS:最大的那个时间有可能有2行
最大的时间就是最近的时间,可是最大的时间有可能是2行记录,即两行一样最大时间的
可通过row_number来获取。
如emp表中有如下数据:
现要查询此表中hiredate第二大的时间,可用如下语句:
select t.* from
(select emp.*,row_number() over (order by hiredate) rn from emp) t
where t.rn=2;
查询结果: