Лучшую половину дня потратил на то, чтобы понять это.
Я хочу получить datediff
из двух дат на основе их недели ISO.
Вот мой код:
SET DATEFIRST 1 ;
DECLARE @A date, @B date;
SET @A = '20180829'; -- August 29th
SET @B = '20180902'; -- September 2nd
SELECT DATEDIFF(WW, @A, @B )
Если вы проверите: http://whatweekisit.org/ (35 неделя, 2018 год), вы увидите, что он работает 27 августа по 2 сентября.
Приведенный выше код вернет DateDiff = 1
, который должен быть 0. Попытка запустить DateDiff
на неделе ISO возвращает следующую ошибку:
Datepart iso_week не поддерживается функцией date dateiff
Я пробовал вынимать даты недели из дат, но затем у меня возникает проблема при сравнении дат разных лет.
Это можно обойти?