gpt4 book ai didi

SQL Server : compare datetime day with GETDATE()

转载 作者:行者123 更新时间:2023-12-02 09:54:46 25 4
gpt4 key购买 nike

我有一个存储过程,应该获取日期等于当前日期或将来日期的所有记录。日期保存在 targetDate 列中并格式化为日期时间。我相应的 WHERE 子句如下:

WHERE A.targetDate >= GETDATE()

一般来说,我的存储过程工作正常,我唯一的问题是 targetDate 是否等于当前日期,因为所有日期都按如下方式保存,即时间设置为零:

2014-02-22 00:00:00.000

我如何更改 WHERE 子句,以便它只考虑日期,但忽略保存的时间,以便即使时间已经过去,我也能获取包含当前日期的任何记录?

非常感谢蒂姆提供的任何帮助。

最佳答案

更改为:

WHERE A.targetDate >= cast(GETDATE() as date)

编辑 - 因为 targetdate 还包含时间,是的,格式如下:

WHERE cast(A.targetDate as date) >= cast(GETDATE() as date)

编辑 - 给出关于性能的评论,可能想尝试:

WHERE a.targetdate >= cast(cast(getdate() as date) as datetime)

上次编辑应该给您相同的结果,并利用目标日期上的任何索引

关于SQL Server : compare datetime day with GETDATE(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21958829/

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