如何使用 API 在 BigQuery 中获取临时表的名称
Posted
技术标签:
【中文标题】如何使用 API 在 BigQuery 中获取临时表的名称【英文标题】:How to get name of a temporary table in BigQuery using API 【发布时间】:2015-01-26 09:23:22 【问题描述】:我正在使用 BigQuery.Jobs.query 运行查询。我知道这会创建一个临时表。我想获取该表的名称以在下一个查询中使用它。
这适用于 BigQuery 网页界面,但我找不到使用 API 的方法。
【问题讨论】:
【参考方案1】:您需要使用Jobs.get端点,并且一旦state=DONE
,如果成功,此方法在响应正文中返回一个Jobs资源。
['configuration']['query']
下有 project_id、dataset_id 和 table_id。如果您运行提取,则某些值低于 ['configuration']['extract']
【讨论】:
具体:cloud.google.com/bigquery/docs/reference/v2/…【参考方案2】:您的工作应该在完成后返回一个对象。如果您使用的是 Python,您将在以下位置找到该表:
query_job._properties["configuration"]["query"]["destinationTable"]
它应该具有以下架构:
"projectId": "YOUR_PROJECT", "datasetId": "YOUR_DATASET", "tableId": "TEMP_ID"
要按名称访问表,您应该使用以下名称:
"projectId.datasetId.tableId"
【讨论】:
以上是关于如何使用 API 在 BigQuery 中获取临时表的名称的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Google Bigquery 的 Java API 以 Json 形式获取查询结果
BigQuery Storage API 无法读取由有序 (ORDER BY) 查询创建的临时表