【发布时间】:2009-11-09 22:10:34
【问题描述】:
全部,
我确信这是一个非常简单的 SQL 查询问题,但我确信有一个好方法,也有一个非常糟糕的方法来做到这一点。留给我自己的设备,我很可能会选择后者。所以……
我在 Access 中有一个表,其中的数据如下所示:
ID Value As_of
1173 156 20090601
1173 173 20081201
1173 307 20080901
1173 305 20080601
127 209 20090301
127 103 20081201
127 113 20080901
127 113 20080601
1271 166 20090201
1271 172 20081201
1271 170 20080901
1271 180 20080601
...
我想获得的是每个唯一 ID 的“值”,以及最近的“截至”日期(格式为 YYYYMM)。
所以,我的结果集应该是这样的:
ID Value As_of
1173 156 20090601
127 209 20090301
1271 166 20090201
请注意,不同的 ID 会有不同的“截止日期”。换句话说,我不能简单地在全球范围内识别最近的日期,然后选择具有该日期的每一行。
不管怎样,这张表总共有大约 200,000 行,以及大约 10,000 个唯一 ID。
提前非常感谢!
【问题讨论】: