向日期添加7天的T-SQL代码
如果我们错过了发货日期,下面的声明会给发货日期增加7天。例如,由于某种原因,本应在2014年7月24日<代码>发货的东西没有发货。以下查询将发货日期增加7天(导致向日期添加7天的T-SQL代码,sql,sql-server,tsql,Sql,Sql Server,Tsql,如果我们错过了发货日期,下面的声明会给发货日期增加7天。例如,由于某种原因,本应在2014年7月24日发货的东西没有发货。以下查询将发货日期增加7天(导致07/31/2014) 唯一的问题是,如果我们错过了装运日期,“测试船”栏只在星期日将装运日期增加7天。我的意思是,对于计划发货日期为2014年7月24日,并且我们错过了当天发货的作业,下面的“测试发货”栏仅在周日将下一个计划发货日期更新为2014年7月31日 例如,假设jobJ012345没有在2014年7月24日发货。然后,“测试船”栏将更
07/31/2014
)
唯一的问题是,如果我们错过了装运日期,“测试船”栏只在星期日将装运日期增加7天。我的意思是,对于计划发货日期为2014年7月24日
,并且我们错过了当天发货的作业,下面的“测试发货”栏仅在周日将下一个计划发货日期更新为2014年7月31日
例如,假设jobJ012345
没有在2014年7月24日
发货。然后,“测试船”栏将更新日期至明天,即2014年7月27日(星期日),而不是2014年7月25日(星期五)。我有什么遗漏吗?如何让“测试船”在周五而不是周日更新日期
'Test Ship' =
CASE
WHEN j.JobStatus <> 'S'
AND CAST(x.ExpectedDate AS date)
< DATEADD(wk, DATEDIFF(wk, 3, CAST(GETDATE() AS date)), 3)
THEN DATEADD(DAY, 4, CAST(DATEADD(week, DATEDIFF(week, 0, GETDATE()), -1) AS date))
WHEN j.JobStatus ='S'
THEN CAST(j.LastShippedDate AS date)
ELSE CAST(x.ExpectedDate AS date)
END
“试验船”=
案例
当j.JobStatus'S'
和铸造(x.预期日期为日期)
请参阅发布在的解决方案,该解决方案可概括为:
案例
条件,使代码更易于阅读getdate()
)请提供样本数据和预期结果。你正确地指出剽窃是不恰当的,但用你自己的话适当地引用和总结是有中间立场的。您还可以将给定链接上的知识应用于问题的细节,并给予适当的评分。(我不能代表投票人说话,但在我编辑之前,你的大部分文字都是抱怨网站而不是回答)。@Flexo:上面的问题已经在多个论坛上发布,我引用的解决方案正是我认为需要的。应用知识就意味着复制它。我对该网站的抱怨是在否决票之后,而不是相反。似乎这个网站不是我参与的好地方。。。