DateDiff每3天一次

时间:2012-10-01 13:46:54

标签: sql sql-server vb.net

我想知道你是否知道如何在做调度程序时每3天更新一次差异。

SELECT DISTINCT 
    CLAIM_NO,
    ModifiedBy,
    ClaimType,
    ClaimStatus,
    EmailAddress,
FROM EP_ADMIN_ITEM_REMINDER
WHERE Status = 1 AND DATEDIFF(Day,DateAdded,getdate()) = 3

这是我在DATEDIFF中输入WHERE子句的代码 我有2列为date 1st DateAdded 2nd DateSent。我需要每3天安排一次我的事情,所以它会先更新datesent,它会检查datesent是否为Greterthan dateadded为3.我只想知道我的WHERE条款是否正确。感谢

2 个答案:

答案 0 :(得分:6)

SELECT DISTINCT 
CLAIM_NO,
ModifiedBy,
ClaimType,
ClaimStatus,
EmailAddress,
FROM EP_ADMIN_ITEM_REMINDER
WHERE Status = 1 AND DATEDIFF(Day,DateAdded,getdate()) > 2

答案 1 :(得分:2)

牢记SARGability。具体来说,运行像你这样的函数会降低性能(我不记得DATEDIFF是否针对此进行了优化),因为它必须为每一行运行它。尝试

WHERE [DateAdded] > DATEADD(day, -3, getdate())