使用 Bigquery API 或 bq 命令行工具创建新的 table

Use Bigquery API or bq command line tool to create new table

我正在尝试想出一种编程方式来从预先存在的 table 生成新的 bigquery table。我知道如何使用 bq 命令行工具创建新视图

bq --project_id='myProject' mk --view="SELECT * FROM [MYDATASET.database]" myProject.newTable

但这会创建一个视图,但对我没有帮助,出于多种原因,我需要创建一个 table。

我很乐意创建一个视图,然后能够定期从该视图生成一个新的 table,但如果不通过 bigquery web 手动执行,我不知道该怎么做接口.

如果有任何帮助,我将不胜感激。

布拉德

如果是普通的table(不是视图),可以使用复制命令:

bq cp <source> <destination>

如果您正在尝试具体化视图,或者如果您需要在此过程中修改 table 的内容(例如,adding/removing/transforming 字段),您可以 运行 带有目的地 table:

的查询
bq query \
  --destination_table=<destination> \
  --allow_large_results \
  --noflatten_results \
  'SELECT ... FROM <source>'

查询选项功能更强大,但您需要为 运行查询付费。副本免费。