使用SQL识别月份的星期几

时间:2019-07-11 06:47:35

标签: sql sql-server

我需要找到月份的星期数。我知道找到年份而不是一个月的周号的方法。

示例: 2019年9月

第1周-第1至第1周
第2周-2日至8日
第3周– 9日至15日
第4周-16日至22日
第5周– 23日至29日
第6周-30日至30日

我尝试使用以下逻辑找到一个,但将2019年9月1日作为第4周。但是我需要这里的值

declare @date datetime = '2019-09-01'
select datepart(day, datediff(day, 0, @date)/7*7)/7, datepart(day, datediff(day, 0, @date)/7 * 7)/7 + 1

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

尝试一下

DECLARE @MyDate DATETIME
SET @MyDate = '2019-09-01'

SELECT DATEPART(WEEK, @MyDate) - DATEPART(WEEK, DATEADD(MM, DATEDIFF(MM,0,@MyDate), 0))+ 1 AS NoOfWeeks