Мне нужно выбрать два набора данных - один за последнюю неделю и один за ту же неделю прошлого года.
Я вижу эту работу, извлекая номер недели, поэтому
SELECT EXTRACT(WEEK FROM DATE_FIELD)
Затем я получаю значение года прошлого года в соответствии с прошлым понедельником, например:
SELECT DATE_SUB(
DATE_TRUNC(DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY), WEEK(MONDAY)),
INTERVAL 1 YEAR)
Мне удалось объединить эти значения вместе, чтобы они представляли дату в формате % Y-% Вт. например. 2019-03
Однако использование функции PARSE_DATE()
, похоже, не работает для анализа год-неделя в BigQuery. Я пробовал несколько комбинаций со строками stati c, например:
SELECT PARSE_DATE("%Y-%W", '2020-53'),
PARSE_DATE("%Y-%W", '2019-01'),
PARSE_DATE("%Y-%W", '2018-00')
Независимо от ввода, дата всегда выходит 1 января в указанный год
Row f0_ f1_ f2_
1
2020-01-01
2019-01-01
2018-01-01
Что я делаю не так?