MSt*_*ikh 3 python api sql-insert google-bigquery
我找不到将查询结果附加到 BigQuery 中已存在且按小时分区的表的方法。我只找到了这个解决方案: https: //cloud.google.com/bigquery/docs/writing-results#writing_query_results。
job_config = bigquery.QueryJobConfig(destination=table_id)
sql = """SELECT * FROM table1 JOIN table2 ON table1.art_n=table2.artn"""
# Start the query, passing in the extra configuration.
query_job = client.query(sql, job_config=job_config) # Make an API request.
query_job.result() # Wait for the job to complete.
Run Code Online (Sandbox Code Playgroud)
但是提供一个目标表来bigquery.QueryJobConfig覆盖它,我没有发现有bigquery.QueryJobConfig一个选项可以指定if_exists或其他东西。据我了解,我需要应用于job.insert查询结果,但我不明白如何。
我也没有找到任何好的建议,也许有人可以指点我?
以防万一,我的实际查询很大,我从一个单独的 JSON 文件加载它。
当您创建您的 时job_config,您需要将其设置write_disposition为WRITE_APPEND:
[..]
job_config = bigquery.QueryJobConfig(
allow_large_results=True,
destination=table_id,
write_disposition='WRITE_APPEND'
)
[..]
Run Code Online (Sandbox Code Playgroud)
看这里。
| 归档时间: |
|
| 查看次数: |
4743 次 |
| 最近记录: |