row_number()over(partition by col1 order by col2)表示根据col1分组,在分组内部根据col2排序,
现表salary有如下数据,取出各人最近一次的salary,

执行sql:
select *
from (select t1.*,
row_number() over(partition by t1.ename order by t1.time desc nulls last) row_index
from salary t1)
where row_index = 1;
结果如下:

本文介绍如何使用SQL查询语句,通过row_number()over()函数结合分组和排序,来获取表中每个人的最近一次salary记录。
3503

被折叠的 条评论
为什么被折叠?



