【发布时间】:2013-07-22 19:18:29
【问题描述】:
我目前有下表:
ID | Name | EventTime | State
1001 | User 1 | 2013/07/22 00:00:05 | 15
1002 | User 2 | 2013/07/23 00:10:00 | 100
1003 | User 3 | 2013/07/23 06:15:31 | 35
1001 | User 1 | 2013/07/23 07:13:00 | 21
1001 | User 1 | 2013/07/23 08:15:00 | 25
1003 | User 3 | 2013/07/23 10:00:00 | 22
1002 | User 2 | 2013/07/23 09:18:21 | 50
我需要的是state 与最后一个eventtime 不同的userid,类似于下面:
ID | Name | EventTime | State
1001 | User 1 | 2013/07/23 08:15:00 | 25
1003 | User 3 | 2013/07/23 10:00:00 | 22
1002 | User 2 | 2013/07/23 09:18:21 | 50
我需要类似以下的东西,但我无法完全得到我需要的东西。
SELECT ID, Name, max(EventTime), State
FROM MyTable
GROUP BY ID
【问题讨论】:
标签: sql sql-server-2008 greatest-n-per-group