BigQuery - 联合数据集中的所有表

Posted

技术标签:

【中文标题】BigQuery - 联合数据集中的所有表【英文标题】:BigQuery - Union All tables in a dataset 【发布时间】:2020-09-03 14:05:05 【问题描述】:

我在 BigQuery 中有一个数据集,我每 2 天上传一个新表。所有的表都是一样的。

想要编写和安排查询而不是联合所有表,包括何时将新表上传到数据集。

使用下面的一个并且正在工作,但是每次我添加一个新表时,我都需要手动将它包含在查询中。寻找查询正在查询数据集中所有表的选项。

(Select * from PnL.kapitani as cl WHERE cl.billing_date is not null)
Union ALL (Select * from PnL.One_Time WHERE billing_date is not null)
Union ALL (Select * from PnL.DSP WHERE billing_date is not null)
Union ALL (Select * from PnL.strypes WHERE billing_date is not null)
Union ALL (Select * from PnL.Cloud_Office WHERE billing_date is not null))```

【问题讨论】:

【参考方案1】:

以下是 BigQuery 标准 SQL

所有表格都相同。 寻找查询正在查询数据集中所有表的选项。

您可以使用 BigQuery 的Wildcard tables 功能

因此,您的查询可以如下所示

Select * from PnL.* WHERE billing_date is not null

【讨论】:

也许我解释得不够好。需要从表格中获取所有信息的结果。 这仍然不清楚您的预期输出到底是什么。请更新您的问题以提供更多详细信息!

以上是关于BigQuery - 联合数据集中的所有表的主要内容,如果未能解决你的问题,请参考以下文章

使用 python 和 BigQuery API 获取 BigQuery 数据集中的表列表

是否可以使用 python 中的 bigquery API 将数据集中所有表的计数(*)发送到 csv 文件?

将数据导入 Bigquery,但只能通过作业历史访问“表”,无法在数据集中查看

在 BigQuery 中将大量数据从美国数据集迁移到欧盟数据集的最佳方法?

可以在 BigQuery 中从不同数据集中查询表

查询 BigQuery 数据集中的最新表