我想从bigQuery导出一个表或视图,但我不需要导出所有内容:我只需要导出某些列。如何配置要导出哪些?
我当前的代码如下所示:
BigQuery bigQuery = BigQueryOptions.getDefaultInstance().getService();
Field fieldToExport = Field.of("column to export", LegacySQLTypeName.STRING);
Table table = bigQuery.getTable("mybigqueryid", "mytable", /* here it only accepts tableOptions, not fields*/);
String format = "csv";
String bucketPath = "mybucketpath.csv";
Job job = table.extract(format, bucketPath);我一开始尝试使用TableField,但显然这些字段不是bigquery表中的字段。
提前感谢
发布于 2018-04-09 17:18:45
BigQuery导出只支持整个表导出!
如果您只需要导出其中的一部分-您应该执行SELECT语句,然后将结果导出到CSV。
为此,您可以为SELECT语句使用目标表,而不是删除该表(显式地或通过设置该表的过期时间),也可以使用所谓的匿名表(这是存储select语句的结果是临时的),您可以从jobs.get API - https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs#configuration.query.destinationTable获得它。
https://stackoverflow.com/questions/49738175
复制相似问题