Мне нужно было создать запрос, который показывает ОБА номера года и недели, например, 2014-52. Год отображается правильно, когда вы используете формулу Datepart () для преобразования недели 53 в неделю 52 в предыдущем году, но показывает неправильный год для недели, которая была неделей ранее, а сейчас должна быть неделя 52. Это показывает, что на этой неделе 2015-52 вместо 2014-52.
Кроме того, данные сортируются неправильно, если вы используете только номер недели, например:
2014-1,2014-11,2014-2
Чтобы преодолеть это, я создал следующий запрос для вставки 0, а также для проверки дней недели 1, которые все еще должны попадать под неделю 52.
ActualWeek: IIf(DatePart("ww",[SomeDate],1,3)=52 And DatePart("ww",[SomeDate])=1, DatePart("yyyy",[SomeDate],1,3)-1,DatePart("yyyy",[SomeDate],1,3)) & "-" & IIf(DatePart("ww",[SomeDate],1,3)<10,"0" & DatePart("ww",[SomeDate],1,3),DatePart("ww",[SomeDate],1,3))