在BigQuery Web UI中运行多个查询

时间:2018-04-20 12:23:25

标签: google-bigquery

我正在使用BigQuery Web UI来运行我的查询。我想从数据集中的所有表中删除一些特定的行。我想通过一次运行所有删除查询来实现,如下所示:

DELETE FROM `dataset_name.tabl_name_1` WHERE REGEXP_CONTAINS(user_dim.user_id, r'g_1478_h_1.') = TRUE;
DELETE FROM `dataset_name.tabl_name_2` WHERE REGEXP_CONTAINS(user_dim.user_id, r'g_1478_h_1.') = TRUE;
DELETE FROM `dataset_name.tabl_name_3` WHERE REGEXP_CONTAINS(user_dim.user_id, r'g_1478_h_1.') = TRUE

有近500张桌子。因此,将一次运行500个查询。我取消选中'使用Legacy Sql'选项。

但是在运行上面的查询(差不多500个)时会返回错误:

  

语法错误:[2:1]

处的意外关键字DELETE

我的问题有解决办法吗?

2 个答案:

答案 0 :(得分:1)

你不能在BigQuery web UI中做到这一点!

这里你最好的选择是使用你偏好的BigQuery client并编写那些重复的陈述

请记住quotas/limitation用于DML

答案 1 :(得分:0)

我通过将查询放入Cloud Function(使用Python)并使用新的Cloud Scheduler进行调度来解决此问题。效果很好,但在BQ本身会更容易。