使用这个数据集:
| RECID |  ID  | VALUE1 | VALUE2 | VALUE3 |                          RECDT |
----------------------------------------------------------------------------
|     1 | 1-01 |      1 |      2 |      3 | January, 01 2013 00:00:00+0000 |
|     2 | 1-01 |      3 | (null) | (null) | January, 02 2013 00:00:00+0000 |
|     3 | 1-01 | (null) | (null) |      1 | January, 03 2013 00:00:00+0000 |
是否可以通过简单的查询返回以下结果?
|  ID  | VALUE1 | VALUE2 | VALUE3 |
-----------------------------------
| 1-01 |      3 |      2 |      1 | 
数据集需要根据日期和 PtID 返回每列的最新值。因此,例如,如果我对 2013 年 1 月 2 日之前对 PTID 的所有更改感兴趣,结果将如下所示:
|  ID  | VALUE1 | VALUE2 | VALUE3 |
-----------------------------------
| 1-01 |      3 |      2 |      3 |
对于任何感兴趣的人,该模式已在sqlfiddle上启动。