数据如下:
ID NAME PID CREATE_TIME
------------------------------
1 张三 A 2018-1-1
2 李四 A 2017-1-1
3 王五 B 2017-12-12
希望的查询结果(相同PID只取CREATE_TIME最大的行):
ID NAME PID CREATE_TIME
------------------------------
1 张三 A 2018-1-1
3 王五 B 2017-12-12
SQL:
select
from ( select *
,ROW_NUMBER()over(partition by PID order by CREATE_TIME desc) as disorder
from table
)T
where t.disorder=1
本文介绍了一种使用SQL查询来获取每个分组内的最新记录的方法。通过ROW_NUMBER()窗口函数配合子查询,可以有效地从数据库中选取每个特定PID下拥有最大CREATE_TIME的记录。
2025

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



