先分组再排序 并获取最新数据

ow_number() OVER (PARTITION BY COL1 ORDER BY COL2) 表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)

实际应用

取最新的数据

select * from (
select hlpr.emplid, hlpr.deptid, hlpr.create_time,
row_number() over (partition by hlpr.emplid order by hlpr.create_time desc nulls last) row_num
from  hl_psndat_res hlpr
) t where t.row_num = 1
这样能获取 最新创建时间的数据

posted @ 2020-05-07 17:29  愚蠢的程序员  阅读(1060)  评论(0编辑  收藏  举报