想象一下下面的架構和樣本數據(SQL Server 2008中):變體使用GROUP BY子句中TSQL
OriginatingObject
----------------------------------------------
ID
1
2
3
ValueSet
----------------------------------------------
ID OriginatingObjectID DateStamp
1 1 2009-05-21 10:41:43
2 1 2009-05-22 12:11:51
3 1 2009-05-22 12:13:25
4 2 2009-05-21 10:42:40
5 2 2009-05-20 02:21:34
6 1 2009-05-21 23:41:43
7 3 2009-05-26 14:56:01
Value
----------------------------------------------
ID ValueSetID Value
1 1 28
etc (a set of rows for each related ValueSet)
我需要獲得最新的ValueSet記錄每個OriginatingObject的ID。不要認爲記錄的ID越高,越新。
我不知道如何正確使用GROUP BY,以確保組合在一起以形成每個聚合行的結果集包括具有該分組的最高DateStamp值的行的ID。我需要使用子查詢還是有更好的方法?
澄清:你想爲每個OriginatingObjectID最近的ValueSet.ID? – Benjol 2009-07-27 11:34:18
Benjol:對。 – 2009-07-27 11:36:14