0

我的要求是我想从 MSSQL 的销售表中找到business-week-ending(不是日历周)给定的列。DATE

使用不同的技术,我能够DATE在表格中找到对应的 [Calender] 周结束(和周开始)日期。

由于我们的工作周在星期三结束 [DOW 3 或 4 取决于一周的开始时间],我试图从一周结束日期中减去天数以将其拉回星期三。这个想法确实工作得很好,但有一个缺陷。只要Date表中的 大于 DOW 3 或 4,就可以正常工作。有什么建议吗?

SELECT DateAdd(wk, DateDiff(wk, 0, Recons_Sales_Details.Recons_Date), 0) + 2
4

1 回答 1

0

你需要考虑SET DATEFIRST这样做:

SET DATEFIRST 4  --4 is Thursday week start

SQL 小提琴演示

于 2015-08-09T18:02:59.877 回答