AFAIK, nie ma standardu w pierwszym tygodniu miesiąca.
Pierwszy tydzień roku to tydzień zawierający Jan 4th
.
Jak definiujesz pierwszy tydzień miesiąca?
AKTUALIZACJA:
Musisz przepisać swoje zapytanie w następujący sposób:
SELECT WEEK(dateField, 5) -
WEEK(DATE_SUB(dateField, INTERVAL DAYOFMONTH(dateField) - 1 DAY), 5) + 1
aby zmiany roku były obsługiwane poprawnie, a tygodnie rozpoczynały się w Monday
.
W przeciwnym razie Twoje zapytanie jest w porządku.