获取一个月的每周数字



我被困了两天。我怎样才能得到一个月的每周数字。

例如:今年5月我们有18、19、20、21、22个星期

我想要的是一个可以得到周数的请求。

谢谢。

您尚未提供该表。在下面的代码中,我正在生成日期表并填写五月月份的日期值。我得到了本月不同的周数。

您可以使用DATEPART(week,(轻松获取任何日期的周数。在msdn 中阅读更多关于DATEPART的信息

DECLARE @FromDate DATETIME, @ToDate DATETIME;
SET @FromDate = '2020-05-01';
SET @ToDate = '2020-05-31';
DECLARE @DateTable TABLE(theDate DATE) 
-- all days in that period
INSERT INTO @DateTable 
SELECT TOP (DATEDIFF(DAY, @FromDate, @ToDate)+1) 
TheDate = CAST(DATEADD(DAY, number, @FromDate) AS DATE)
FROM [master].dbo.spt_values 
WHERE [type] = N'P' ORDER BY number;
SELECT DISTINCT DATEPART(week,thedate) as weeknumbers FROM @DateTable
+-------------+
| weeknumbers |
+-------------+
|          18 |
|          19 |
|          20 |
|          21 |
|          22 |
|          23 |
+-------------+

最新更新