如何翻阅QueryResults

时间:2017-10-25 09:56:38

标签: python-2.7 google-bigquery

我使用以下代码从BigQuery获得结果:

from google.oauth2 import service_account
from google.cloud import bigquery

credential = service_account.Credentials.from_service_account_file(SERVICE_ACCOUNT_FILE)
scoped_credential = credential.with_scopes(BIG_QUERY_SCOPE)
client = bigquery.Client(project="XX-XX",credentials=scoped_credential)

query_results = client.run_sync_query(query_detail)
query_results.use_legacy_sql = False
query_results.run()

iterator = query_results.fetch_data()
rows = iterator.query_result.rows

但它只能返回50000行。我试图在获取数据时进行分页,但未能弄清楚如何进行分页:

page_token = query_results.page_token
iterator = query_results.fetch_data(max_results=500, page_token=page_token)

我无法找到如何获取更新的page_token。

谢谢,

1 个答案:

答案 0 :(得分:1)

我认为你很亲密。立即尝试运行此代码:

data = list(query_results.fetch_data()) # changed from `iterator` to `data` the variable name

页面令牌的管理是自动完成的。