在BigQuery中将查询结果赋值给变量的实现方法
将SELECT查询结果赋值给数组变量
当然可以实现,你可以利用ARRAY()函数直接将SELECT语句的查询结果转换为数组并赋值给变量,具体写法如下:
基础写法
DECLARE ids_list ARRAY<STRING>; -- 将查询结果直接转为数组赋值 SET ids_list = ARRAY(SELECT id FROM your_target_table WHERE your_filter_condition);
去重处理(可选)
如果查询结果存在重复ID,可通过DISTINCT关键字去重:
DECLARE ids_list ARRAY<STRING>; SET ids_list = ARRAY(SELECT DISTINCT id FROM your_target_table WHERE your_filter_condition);
在后续查询中使用变量
赋值完成后,你可以通过UNNEST()将数组展开,在其他SELECT语句中使用:
-- 示例:筛选出ID在数组中的记录 SELECT * FROM another_table WHERE id IN UNNEST(ids_list);
内容的提问来源于stack exchange,提问作者brama84
相关产品推荐
相关产品推荐

