RT: SysID ID
Time Name
SysID
ID Time Name
1 1 2013 小王 1 1 2013 小王
2 1 2012 小雨 3 2 2013 小米
3 2 2013 小米 -------------->
4 2 2012 小菊
SQL:
select * from
(SELECT ID,NAME,TIME,ROW_NUMBER () OVER (PARTITION BY ID ORDER BY Time desc) as flag FROM Table) cmj
where cmj.flag = 1
说明:
row_number() 顺序号码, 也就是 行号, 比如 1,2,3,4,5 这样的顺序。
over 语法需要,必须的。
partition by name, kecheng,score 是按照 name, kecheng,score 分区。
也就是 如果有 不同的 name, kecheng,score , 这个 序号又重新从1开始计算。
order by rowid 是 排序方式, 也就是 最小的 rowid , row_number() 是1,然后随着 rowid 的增加, row_number() 不断递增
本文介绍了一种使用SQL语句来获取每个ID对应的最新时间记录的方法。通过ROW_NUMBER()函数结合PARTITION BY和ORDER BY子句,可以有效地找出每个ID最新的时间戳及对应的数据。

3万+

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



