获取从星期一开始的周数 04:00 am in the year
Get week number starting from monday from 04:00 am in the year
我使用此代码,但周从星期日开始。
Select DATEPART(week,s.Calculationdate) weeknumber, s.Calculationdate
FROM sales.orders s
WHERE s.Calculationdate >= '2020-01-01 04:00:00' and s.Calculationdate < '2020-05-01 04:00:00'
AND s.Calculationdate< CAST(CONVERT(VARCHAR, GETDATE(),23) + '04:00:00' AS datetime)
有了 DATEPART
你可以使用 WEEK
和 ISO_WEEK
:
SELECT DATEPART(WEEK,'2020-04-05')
SELECT DATEPART(ISO_WEEK,'2020-04-05')
并且您可以使用以下方法对一周的第一天进行更多控制设置:
SELECT @@DATEFIRST
SET DATEFIRST 1; -- day of a week
SELECT @@DATEFIRST
我使用此代码,但周从星期日开始。
Select DATEPART(week,s.Calculationdate) weeknumber, s.Calculationdate
FROM sales.orders s
WHERE s.Calculationdate >= '2020-01-01 04:00:00' and s.Calculationdate < '2020-05-01 04:00:00'
AND s.Calculationdate< CAST(CONVERT(VARCHAR, GETDATE(),23) + '04:00:00' AS datetime)
有了 DATEPART
你可以使用 WEEK
和 ISO_WEEK
:
SELECT DATEPART(WEEK,'2020-04-05')
SELECT DATEPART(ISO_WEEK,'2020-04-05')
并且您可以使用以下方法对一周的第一天进行更多控制设置:
SELECT @@DATEFIRST
SET DATEFIRST 1; -- day of a week
SELECT @@DATEFIRST