Bigquery 使用 Union All 和通配符删除查询

Posted

技术标签:

【中文标题】Bigquery 使用 Union All 和通配符删除查询【英文标题】:Bigquery Delete Query with Union All & Wildcards 【发布时间】:2019-09-24 10:10:50 【问题描述】:

想从 bigquery 中的多个表中删除数据。

下面的删除语法正在删除没有联合全部或通配符的单个表

delete  FROM `abc.analytics_151541058.events_20190201` WHERE event_date='20190201'

以下使用联合删除查询全部无效

delete  FROM `abc.analytics_151541058.events_20190201` WHERE event_date='20190201'
UNION ALL 
delete  FROM `abc.analytics_151541058.events_20190201` WHERE event_date='20190202'

以下使用通配符的删除查询无效

delete  FROM `abc.analytics_151541058.events_*`,  
WHERE _TABLE_SUFFIX BETWEEN '20190201' AND '20190202'

请。帮助

【问题讨论】:

BigQuery 不支持基于通配符表的 DML。 是否需要在 bigquery 中删除多个表。请。帮助 只有当你设置一段代码来做它。 你能请。帮助我如何实现这一目标。谢谢 【参考方案1】:

BigQuery scripting 现在处于测试阶段。

您现在可以简单地堆叠多个 DELETE 语句,例如:

delete  FROM `abc.analytics_151541058.events_20190201` WHERE event_date='20190201'
delete  FROM `abc.analytics_151541058.events_20190202` WHERE event_date='20190202'

【讨论】:

以上是关于Bigquery 使用 Union All 和通配符删除查询的主要内容,如果未能解决你的问题,请参考以下文章