问题描述
我看过this资源,但这不是我所需要的。 question是我想要完成的,但是我想在BQ终端中运行它。
例如,过去我已经在bq命令行中将表信息导出为.json了:
bq show --schema --format = prettyjson Dataset.TableView> /home/directory/Dataset.TableView.json
这给出了设置项目中指定数据集的Table信息的prettyjson。我只想在项目中具有所有数据集名称的.csv(或任何类型的列表)。但是我不知道如何适当地更改命令行以输出所需的内容。
解决方法
为了进一步为社区做出贡献,使用bq
命令行作为@DanielZagales答案的替代方法。根据文档,您可以使用bq ls
列出项目中的所有the datasets。如下,
bq ls -a --format=pretty --project_id your-project-id
标志-a
是--all
的缩写,它保证所有数据集都将包含在列表中。标志--format=pretty
将列表输出为表格格式,您可以使用其他格式,例如here。此外,您还可以使用--filter labels.key:value
过滤与表达式匹配的数据集,或使用--max_results
或-n
设置最大结果数。
注意:您还可以列出数据集中的所有表,例如here。
,您应该能够查询信息架构以获得所需的结果。 例如:
public static void printLoanDecisions(String[] loansArray){
int approved = 0;
int denied = 0;
String result = loansArray.toString();
if (result.equals("Your loan has been approved!")){
approved++;
} else if (result.equals("Sorry your loan wasn't approved.")){
denied++;
}
然后可以将其添加到bq命令中,例如:
select * from `project_id.INFORMATION_SCHEMA.SCHEMATA`;