繁体   English   中英

将单个项目中的 Google BigQuery 数据集导出为 bq 命令行中的列表?

[英]Export Google BigQuery datasets in a single project as list in bq command-line?

我看过这个资源,但它不是我所需要的。 这道题是我想完成的,但是我想在BQ终端运行。

例如,过去我在 bq 命令行中将表信息导出为 a.json,如下所示:

bq 显示 --schema --format=prettyjson Dataset.TableView > /home/directory/Dataset.TableView.json

这样就给出了一个set project中指定数据集的Table信息的prettyjson。 我只想拥有项目中所有数据集名称的 a.csv(或任何类型的列表)。 但是我不知道如何将该命令行适当地更改为我想要的 output。

为了进一步为社区做出贡献,作为@DanielZagales 答案的替代方案,使用bq命令行。 根据文档,您可以使用bq ls列出项目中的所有数据集 比如如下,

bq ls -a --format=pretty --project_id your-project-id

标志-a--all的缩写,它保证所有数据集都将包含在列表中。 标志--format=pretty将 output 列表作为表格格式,您可以使用其他格式,如此所述。 此外,您还可以使用--filter labels.key:value过滤与表达式匹配的数据集,或使用--max_results-n设置最大结果数。

注意:您还可以列出数据集中的所有表,如此所述。

您应该能够查询信息模式以获得所需的结果。 例子:

select * from `project_id.INFORMATION_SCHEMA.SCHEMATA`;

然后,您可以将其添加到 bq 命令中,例如:

bq query --format=csv 'select * from `project_id.INFORMATION_SCHEMA.SCHEMATA`;'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM