我在SQL中有这个查询
WHERE DATEDIFF(DD,[fld_DateResolved],GETDATE()) > 3
我想要做的是,在我的系统中3天后关闭门票,我的问题是,这是查询以检查DateResolved和GetDate的DATEDIFF是否大于3的正确方法吗?
由于
答案 0 :(得分:8)
将其设为S'argable(这意味着如果存在,可以使用适当的索引):
WHERE [fld_DateResolved] <= DATEADD(Day, -3, CAST(GETDATE() as Date))
[更新:向Date
添加了强制转换,假定您使用的是SQL Server 2008 +]