0
我想选择按日期排序的前3条记录,以便记录不具有相同ID,对于具有相同ID的两条(或更多条)记录,请选择最新。表是这样的:从列中选择具有唯一值的列中的行
ID | Date | Value
1 | 2013-04-29T16:27:20 | value1
2 | 2013-04-29T19:46:25 | value2
2 | 2013-04-30T16:50:30 | value3
3 | 2013-04-30T16:40:30 | value4
1 | 2013-04-30T17:50:30 | value5
我想要的结果是这样的:
ID | Date | Value
1 | 2013-04-30T17:50:30 | value5
2 | 2013-04-30T16:50:30 | value3
3 | 2013-04-30T16:40:30 | value4
感谢您的回答,可以请你怎么分区的以及OVER解释在这个查询中工作 – Jaguar
@JackDaniels'row_number()over()'将一个分区应用到数据,所以这就是说你想要一个递增的数字,以每个id为基础按照日期递增的顺序增加。如果您有两列可能与您的数据相同,那么您可以将它按两列分区。请参阅此MSDN链接 - http://msdn.microsoft.com/zh-cn/library/ms186734.aspx – Taryn