python - 如何在 Python 中运行 BigQuery 查询

标签 python google-bigquery

这是我一直在 BigQuery 中运行的查询,我想在我的 python 脚本中运行。我将如何更改它/我必须添加什么才能在 Python 中运行。

#standardSQL
SELECT
  Serial,
  MAX(createdAt) AS Latest_Use,
  SUM(ConnectionTime/3600) as Total_Hours,
  COUNT(DISTINCT DeviceID) AS Devices_Connected
FROM `dataworks-356fa.FirebaseArchive.testf`
WHERE Model = "BlueBox-pH"
GROUP BY Serial
ORDER BY Serial
LIMIT 1000;

根据我一直在研究的内容,我无法使用 Python 将此查询保存为永久表。真的吗?如果是真的,是否仍然可以导出临时表?

最佳答案

您需要使用 BigQuery Python client lib ,然后像这样的事情应该让你启动并运行:

from google.cloud import bigquery
client = bigquery.Client(project='PROJECT_ID')
query = "SELECT...."
dataset = client.dataset('dataset')
table = dataset.table(name='table')
job = client.run_async_query('my-job', query)
job.destination = table
job.write_disposition= 'WRITE_TRUNCATE'
job.begin()

https://googlecloudplatform.github.io/google-cloud-python/stable/bigquery-usage.html

查看当前BigQuery Python client tutorial .

关于python - 如何在 Python 中运行 BigQuery 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45003833/

相关文章:

python - Django/Sqlite3 为带有外键的模型添加一行

Python PIL 和 StringIO

sql - POLYGON bigQuery 无效

python - 使用smtplib SMTP.sendmail发送邮件后如何获得服务器回复

python - 创建 UI 和 glRotatef() 的问题

google-bigquery - BigQuery 试运行会返回什么?

olap - BigQuery 中有哪些 OLAP 功能?

hadoop - 将配置单元表迁移到 Google BigQuery

python - 在 Python 3.2 和 3.3 中给出不同结果的数值模拟

google-bigquery - 对包含超过 4000 天数据的 bigquery 表进行分区?