【问题标题】:Greater of two variables in mySQL querymySQL 查询中的两个变量中的较大者
【发布时间】:2012-06-20 15:27:01
【问题描述】:

我想编写一个返回单个日期值的查询,该值是两列中最新的。

所以,如果我有一个值 a、b、date1、date2 的表,我想要类似的东西:

SELECT a, b, (Greater of date1 and date2) as date FROM...

这可能吗?

【问题讨论】:

  • 这里似乎有两个可靠的答案,一个比另一个更好吗?它们都可以使用时间戳吗?

标签: mysql sql


【解决方案1】:

你可以使用GREATEST函数。

SELECT a, b, GREATEST(date1,date2) as date FROM...

【讨论】:

    【解决方案2】:

    您可以使用IF statement

    SELECT a, b, IF(date1>date2, date1, date2) as date 
    

    【讨论】:

      【解决方案3】:

      只有我们IF 函数...

      SELECT a, b, 
          IF (date1 > date2, date1, date2) AS 'date'
      FROM yourtable
      

      ...或与GREATEST比较:

      SELECT a, b, 
          GREATEST(date1, date2) AS 'date'
      FROM yourtable
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-28
        • 1970-01-01
        • 2014-10-29
        • 1970-01-01
        • 2017-10-24
        • 1970-01-01
        相关资源
        最近更新 更多