declare @date varchar(30) = '2013-04-18'
DECLARE @WeekOfMonth TINYINT
SET @WeekOfMonth =
(
DAY(@DATE) +
(DATEPART(dw,
DATEADD (MONTH,
DATEDIFF (MONTH,
0,
@DATE),
0))
- 1) -1) / 7 + 1
print @WeekOfMonth
これは、今日は「2013-03-04」で、今月の第 2週のように、月の週番号を調べるためにインターネットで見つけたクエリです。クエリは正常に機能していますが、理解できません。そのブログに投稿した人も、それが機能しているとは述べていません。誰かがそれをよりよく理解するのを手伝ってくれませんか。