【发布时间】:2014-05-15 14:29:27
【问题描述】:
我有一个需求,设置一个表的周数从第一天到第一个星期一到下一个星期一等等。我可以轻松获得一年中的第一天和第一个星期一,但我不知道如何从第一个星期一开始以 7 天的间隔递增表格,以便我可以设置周数。
我有这样的事情:
UPDATE table
SET weeknumberofyear = @WeekNumber + 1
WHERE datefield = DATEADD(Day,7,(SELECT DATEADD(DAY, (@@DATEFIRST - DATEPART(WEEKDAY, @Date) + (8 - @@DATEFIRST) * 2) % 7, @Date)))
【问题讨论】:
-
您能否改写您的问题以使其更清楚?看了五遍,没看懂。
-
您想以星期二作为一周的第一天来计算周数,对吗?请参阅下面的答案。
标签: sql sql-server date while-loop sql-update