SQL Server:将日期时间与GETDATE()进行比较
发布时间:2020-12-12 06:41:46 所属栏目:MsSql教程 来源:网络整理
导读:我有一个存储过程应该获取日期等于当前日期或将来的所有记录. 日期保存在列targetDate中,并格式化为datetime. 我对应的WHERE子句如下: WHERE A.targetDate = GETDATE() 一般来说,我的存储过程工作正常,我唯一的问题是如果targetDate等于当前日期,因为所有日
我有一个存储过程应该获取日期等于当前日期或将来的所有记录.
日期保存在列targetDate中,并格式化为datetime. 我对应的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) 上次编辑应该给你相同的结果,并利用targetdate上的任何索引 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |