我需要选择两组数据 - 一组来自上周,一组来自去年同一周。
我看到这个工作的方式是提取周数,所以
SELECT EXTRACT(WEEK FROM DATE_FIELD)
然后我根据上周一得到去年的年份值,就像这样
SELECT DATE_SUB(
DATE_TRUNC(DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY), WEEK(MONDAY)),
INTERVAL 1 YEAR)
我已设法将这些值连接在一起,以便它们表示 %Y-%W 格式的日期。例如。2019-03
然而,使用PARSE_DATE()
函数似乎不适用于解析 BigQuery 中的年周。我尝试了多种静态字符串的组合,例如:
SELECT PARSE_DATE("%Y-%W", '2020-53'),
PARSE_DATE("%Y-%W", '2019-01'),
PARSE_DATE("%Y-%W", '2018-00')
无论输入如何,日期始终显示为指定年份的 1 月 1 日
Row f0_ f1_ f2_
1
2020-01-01
2019-01-01
2018-01-01
我究竟做错了什么?