如何获取参数化 BigQuery 查询的控制台视图?



我正在 Flask 应用程序中运行参数化的 BigQuery 查询,完全按照 Google 文档中的说明进行操作。

我看到一些意外的结果,所以只想将查询打印到我的终端/控制台以进行调试。当我这样做时,只能看到带有参数化占位符的查询,而不是值。

有谁知道如何获取正在运行的值的查询视图?

例如:

query = "select * from dogs where breed = @dog_breed"
query_params = [
bigquery.ScalarQueryParameter("dog_breed", "STRING", "kokoni")
]
job_config = bigquery.QueryJobConfig()
job_config.query_parameters = query_params
print(query) # This will only print query as above, not with value 'kokoni'
query_job = client.query(
query,
job_config=job_config,
)  

您可以使用list_jobs 方法从 Job 类中检索信息,如下例所示:

from google.cloud import bigquery
client = bigquery.Client()
# List the 3 most recent jobs in reverse chronological order.
# Omit the max_results parameter to list jobs from the past 6 months.
print("Last 3 jobs:")
for job in client.list_jobs(max_results=3):  # API request(s)
print(job.query)
print(job.query_parameters)

最新更新