对 BigQuery 结果集进行分页
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
使用分页令牌对 BigQuery 结果集进行分页,并一次循环遍历一页结果。
深入探索
如需查看包含此代码示例的详细文档,请参阅以下内容:
代码示例
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],[],[],[],null,["# Paginate a BigQuery result set\n\nUses a page token to paginate a BigQuery result set and loop through a page of results at a time.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Paginate a BigQuery result set](/workflows/docs/paginate-bigquery-results)\n\nCode sample\n-----------\n\n### YAML\n\n # Use a page token to loop through a page of results at a time when\n # querying a BigQuery dataset larger than the Workflows memory limit\n # This workflow queries a public dataset to determine the most common\n # names in the US between 1910 and 2013\n main:\n params: [input]\n steps:\n - init:\n assign:\n - pageToken: null\n - startQuery:\n call: googleapis.bigquery.v2.jobs.insert\n args:\n projectId: ${sys.get_env(\"GOOGLE_CLOUD_PROJECT_ID\")}\n body:\n configuration:\n query:\n useLegacySql: false\n # Remove LIMIT from the query to iterate through all results\n query: SELECT name, SUM(number) AS total FROM `bigquery-public-data.usa_names.usa_1910_2013` GROUP BY name ORDER BY total DESC LIMIT 50\n result: query\n - getPage:\n call: googleapis.bigquery.v2.jobs.getQueryResults\n args:\n projectId: ${sys.get_env(\"GOOGLE_CLOUD_PROJECT_ID\")}\n jobId: ${query.jobReference.jobId}\n maxResults: 10\n pageToken: ${pageToken}\n result: page\n - processPage:\n for:\n value: row\n in: ${page.rows}\n steps:\n - processRow:\n call: sys.log\n args:\n data: ${row}\n - checkIfDone:\n switch:\n - condition: ${\"pageToken\" in page and page.pageToken != \"\"}\n assign:\n - pageToken: ${page.pageToken}\n next: getPage\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=workflows)."]]