AFAIK,该月的第一周没有标准。
一年的第一周是包含的周
Jan 4th。
您如何定义每月的第一周?
更新:
您需要像这样重写查询:
SELECT WEEK(dateField, 5) - WEEK(DATE_SUB(dateField, INTERVAL DAYOFMonTH(dateField) - 1 DAY), 5) + 1
以便正确处理年份转换,并从星期开始
Monday。
否则,您的查询就可以了。

AFAIK,该月的第一周没有标准。
一年的第一周是包含的周
Jan 4th。
您如何定义每月的第一周?
更新:
您需要像这样重写查询:
SELECT WEEK(dateField, 5) - WEEK(DATE_SUB(dateField, INTERVAL DAYOFMonTH(dateField) - 1 DAY), 5) + 1
以便正确处理年份转换,并从星期开始
Monday。
否则,您的查询就可以了。