gpt4 book ai didi

sql - SQL 的月差

转载 作者:行者123 更新时间:2023-12-01 08:39:40 28 4
gpt4 key购买 nike

考虑一个日期时间字段Fld1

如何使用 SQL 查询检查该值是否早于 3 个月前?

最佳答案

从你的其他问题来看,它看起来像 SQL Server。

已经给出的 2 个 SQL Server 答案不是 SARGable (link) ;他们不能使用索引。

WHERE datecolumn < DATEADD(month, -3, GETDATE())

构造一个 3 个月前的日期并对其进行测试;这将能够使用索引。这句话适用于任何 DBMS。

如果您在整个日历月之后,例如

  • 当前日期 = 2011 年 2 月 24 日
  • 3 个月前 = 2010 年 11 月 - 2010 年(忽略月份中的某天)
  • 必填 = 2010 年 11 月及之前的任何日期

WHERE datecolumn <= DATEADD(month, datediff(month, 0, getdate()) -2, 0)

关于sql - SQL 的月差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5123479/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com