如果我有一个表(其他列)有两个DATETIME列,那么我如何从这两列中选择最近的日期。
例:
ID Date1 Date2 1 1/1/2008 2/1/2008 2 2/1/2008 1/1/2008 3 1/10/2008 1/10/2008
如果我希望我的结果看起来像
ID MostRecentDate 1 2/1/2008 2 2/1/2008 3 1/10/2008
有没有一个简单的方法,我显然是忽视?我知道我可以执行子查询和case语句,甚至可以在sql server中编写一个函数来处理它,但是我在头脑中已经有一个已经建立的max-compare类型函数,我刚刚忘记了。
解决方法
CASE是IMHO最好的选择:
SELECT ID,CASE WHEN Date1 > Date2 THEN Date1 ELSE Date2 END AS MostRecentDate FROM Table