为什么 SQL datepart(ww,GETDATE()) returns 当前周 + 1
Why SQL datepart(ww,GETDATE()) returns current week + 1
我正在尝试获取日历的当前周。假设今天是 2022-03-14 12:00:00.
我正在使用这两个:
select GETDATE() // returns 2022-03-14 12:00:00
select datepart(ww,GETDATE() //returns 12
但根据日历 2022-03-14 12:00:00 应该是第 11 周。
差异从何而来,我如何才能获得基本的当前周数?
SQL 服务器中的 GetDatePart(ww, ...) 依赖于设置的 datefirst 作为 documented here.
您可以使用 GetDatePart(isoww, getdate()) 来获取 ISO 周数。
我正在尝试获取日历的当前周。假设今天是 2022-03-14 12:00:00.
我正在使用这两个:
select GETDATE() // returns 2022-03-14 12:00:00
select datepart(ww,GETDATE() //returns 12
但根据日历 2022-03-14 12:00:00 应该是第 11 周。
差异从何而来,我如何才能获得基本的当前周数?
SQL 服务器中的 GetDatePart(ww, ...) 依赖于设置的 datefirst 作为 documented here. 您可以使用 GetDatePart(isoww, getdate()) 来获取 ISO 周数。