SQL Server中年度第一个星期一

HOY*_*HOY 6 sql t-sql sql-server

如何使用T-SQL找到"年度第一个星期一"?

Cᴏʀ*_*ᴏʀʏ 9

这是链接ngruson发布的示例(http://sqlbump.blogspot.nl/2010/01/first-monday-of-year.html):

DECLARE @Date datetime
DECLARE @Year int = 2012

SET @Date = DATEADD(YEAR, @Year - 1900, 0)

SELECT DATEADD(DAY, (@@DATEFIRST - DATEPART(WEEKDAY, @Date) + 
    (8 - @@DATEFIRST) * 2) % 7, @Date)
Run Code Online (Sandbox Code Playgroud)

以上回报:

2012-01-02 00:00:00.000
Run Code Online (Sandbox Code Playgroud)