【问题标题】:Select * Where Date 1 and Date 2 elapsed time is greater than选择 * 其中日期 1 和日期 2 经过的时间大于
【发布时间】:2019-07-31 21:29:08
【问题描述】:

我在同一张表中有 2 列:创建日期和批准日期

在我的 Select 语句中,我只想返回 CREATED DATE 和 APPROVED DATE 之间经过的时间大于 2 天,或者 APPROVED DATE 比 CREATED DATE 大 2 天的记录。

非常感谢您的帮助!

【问题讨论】:

  • 你有没有尝试过?

标签: mysql sql


【解决方案1】:

您可以使用DATEDIFF

WHERE DATEDIFF(created_date, approved_date) > 2 OR DATEDIFF(approved_date, created_date) > 2

【讨论】:

  • DATEDIFF 工作谢谢,只是被告知它需要 3 个参数来指定时间的度量 Where DATEDIFF(day, created_date,approved_date) > 2
  • 在SQL server中你需要3个see link
  • @C.Timmerman 很高兴为您提供帮助,欢迎来到 Stack Overflow。如果此答案或任何其他答案解决了您的问题,请将其标记为已接受
【解决方案2】:

取决于您需要知道的精确程度:

如果“日期”列是日期:

WHERE DATEDIFF(`APPROVED DATE`, `CREATED DATE`) > 2

如果“日期”列是时间戳,并且您想知道第二个 2 天已经过去:

WHERE TIMESTAMPDIFF(DAY, `CREATED DATE`, `APPROVED DATE`) > 2

【讨论】:

    猜你喜欢
    • 2020-03-02
    • 1970-01-01
    • 1970-01-01
    • 2015-10-14
    • 1970-01-01
    • 2015-11-01
    • 2021-09-09
    • 1970-01-01
    • 2012-09-11
    相关资源
    最近更新 更多