0

queryResult 显示它有 13224 行,然后我用

List<TableRow> rows = queryResult.getRows();

然后它显示列表“行”只有 512 行。

有什么帮助吗?

4

2 回答 2

1

如果行很大或有很多行,您可能无法取回所有行。您可以通过调用带有相应偏移量的 jobs.GetQUeryResults() 或 tabledata.List() 来获取剩余的行。

来自https://developers.google.com/bigquery/docs/queries

  1. 使用您的查询字符串调用 jobs.query。此方法需要一个可选的超时时间;如果设置为 0 或未指定,该方法将默认为 10 秒。如果查询在指定的超时时间内返回,该方法将返回第一页结果。如需其他结果,请按如下所述调用 jobs.getQueryResults。如果在查询完成之前查询超时到期,则该方法将返回 jobComplete=false,并且您必须调用 jobs.getQueryResults,如下所述。即使在超时期限之后,查询作业仍将继续运行,直到它成功或因为发生错误而完成。
  2. [如有必要] 调用 jobs.getQueryResults 以分页浏览其他结果,从超过其超时的查询中获取结果,或检查任何查询结果,直到临时表被删除。此方法允许您指定起始行,并且还采用与作业相同的超时。查询超时以允许在作业尚未完成时等待。
于 2013-03-27T23:31:45.317 回答
0

我认为您必须使用结果集对象来获取该行。result_set.getString() 方法用于获取行的属性。

于 2013-03-27T04:32:14.183 回答