【发布时间】:2020-11-25 14:18:39
【问题描述】:
我正在尝试遍历查询结果并合并结果。
我想遍历一个叫做滚动日期的变量,它给出了一个相差 30 天的日期数组。
DECLARE rollingdate ARRAY<DATE>;
SET rollingdate = ( GENERATE_DATE_ARRAY(CURRENT_DATE(), DATE_SUB(CURRENT_DATE(), INTERVAL 365 DAY), INTERVAL -30 DAY) );
我的表按 DATE 分区,我想循环从滚动日期开始的两个连续日期并合并所有结果
select *, rollingdate[0]
from table
where date > rollingdate[1] and date < rollingdate[0]
union all
select *, rollingdate[1]
from table
where date > rollingdate[2] and date < rollingdate[1]
如何在 bigquery 中实现这一点?我尝试使用 bigquery 脚本,但它们不接受子查询..
【问题讨论】:
-
您只是想添加滚动日期吗?不知道你为什么要分割你的查询只是为了再次联合它?任何给定的日期将只属于 1 个时间段
标签: sql google-bigquery