【发布时间】:2009-09-18 02:28:31
【问题描述】:
我有一个看起来像这样的 temptable:
RequestID | CreatedDate | HistoryStatus
CF-0000001 | 8/26/2009 1:07:01 PM | For Review
CF-0000001 | 8/26/2009 1:07:01 PM | Completed
CF-0000112 | 8/26/2009 1:07:01 PM | For Review
CF-0000113 | 8/26/2009 1:07:01 PM | For Review
CF-0000114 | 8/26/2009 1:07:01 PM | Completed
CF-0000115 | 8/26/2009 1:07:01 PM | Completed
而我希望表格最后的样子是这样的:
RequestID | CreatedDate | HistoryStatus
CF-0000001 | 8/26/2009 1:07:01 PM | Completed
CF-0000112 | 8/26/2009 1:07:01 PM | For Review
CF-0000113 | 8/26/2009 1:07:01 PM | For Review
CF-0000114 | 8/26/2009 1:07:01 PM | Completed
CF-0000115 | 8/26/2009 1:07:01 PM | Completed
即应该删除重复的CF-0000001。
如果有多个重复行并且仍然返回不重复的行,我该如何返回或者我应该说只选择一行?
【问题讨论】:
-
两张表是一样的。请更正预期的输出。
-
RequestID 和 CreatedDate 相同时返回哪一行?还是没关系?
-
我的解决方案假定日期实际上会有所不同,因此您可以选择最大日期 - 如果不是,需要一种方法来对状态进行排名以知道哪个应该获胜 - 虽然硬编码似乎不优雅......
标签: sql