【发布时间】:2014-03-13 21:45:25
【问题描述】:
我有这个查询来提取给定日期的最后一个星期五日期。它适用于一整天,除非给定日期是今天。
选择 dateadd(d, -((datepart(weekday, getdate()) + 1 + @@DATEFIRST) % 7)、getdate())
例如,今天是 2014-02-14。如果我应用上面的查询,返回的结果仍然是 2014-02-14
dateadd(d, -((datepart(weekday, '2014-02-14') + 1 + @@DATEFIRST) % 7), '2014-02-14')
如果我在下面输入 2014-02-13,那么它会正确返回上周五的日期。
select dateadd(d, -((datepart(weekday, '2014-02-13') + 1 + @@DATEFIRST) % 7), '2014-02-13')
如果今天是星期五,你能帮助我如何获得上周五的日期。
【问题讨论】:
标签: sql-server tsql