加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 选择两列之间的最近日期

发布时间:2020-12-12 06:57:20 所属栏目:MsSql教程 来源:网络整理
导读:如果我有一个表(其他列)有两个DATETIME列,那么我如何从这两列中选择最近的日期。 例: ID Date1 Date21 1/1/2008 2/1/20082 2/1/2008 1/1/20083 1/10/2008 1/10/2008 如果我希望我的结果看起来像 ID MostRecentDate1 2/1/20082 2/1/20083 1/10/2008 有没有一
如果我有一个表(其他列)有两个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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读