【问题标题】:Google BigQuery "bq" tool extracts nested/repeated records, how with Java's API?Google BigQuery“bq”工具提取嵌套/重复记录,Java 的 API 怎么样?
【发布时间】:2014-03-05 05:07:59
【问题描述】:
我创建了一个包含五个嵌套/重复记录的 Google BigQuery 表,
当我尝试查询时
...bigquery.jobs().query(projectId, queryRequest).execute();...
then
...queryResponse.getRows()...,BigQuery 返回一个平面 json。
我已经看到python bq --extract 工具能够很好地返回 json。
实际上,这个 json 正是我加载的 json。
Java的API怎么可能?
有人能帮助我吗?
谢谢
欧诺佛
【问题讨论】:
标签:
java
json
google-bigquery
【解决方案1】:
BigQuery 会展平所有查询的结果。一段时间以来,我们收到了一项功能请求,以提供不展平查询结果的选项,我们可能会在未来添加对此的支持。
但是,如果您想从表中读取嵌套数据,可以使用bigquery.tabledata().list(...),它将返回嵌套/重复的 json。
【讨论】:
-
乔丹,感谢您的回复。如果我使用 TableDataList queryResult = bigquery.tabledata().list(...).execute();正如你所说,然后 List rows = queryResult.getRows();结果总是平的。我已经尝试了 queryResult 的所有方法,但我无法返回嵌套/重复的 json。