如何使用Jupyter Notebooks Python将变量传递给SQL查询

时间:2017-10-25 21:20:27

标签: python google-bigquery jupyter-notebook

例如:

%bq query -n qu

SELECT 

    *

FROM

    Table

WHERE 

    [passed in variable (column)] = true

然后我想在循环中执行查询

for row in data:

  bq.execute qu(row[1])

是否存在这些方面的内容?

编辑:我为遇到此问题的任何人找到了解决方案

For row in [dataset with your variables]:

   query = "SELECT * FROM DATASET WHERE {} = TRUE".format(variableData[0])

   tab = bq.Query(query)

   df = tab.execute(output_options=bq.QueryOutput.dataframe()).result()

   qu = [list(x) for x in df.as_matrix()]

   print(qu)

1 个答案:

答案 0 :(得分:0)

这是一个显示Python变量替换的完整示例。 https://colab.research.google.com/notebook#fileId=0B7I8C_4vGdF6Mk1RMm1Fdm9EQVU

笔记本显示以下内容:

  1. 从一些随机CSV数据创建BigQuery表。
  2. 使用Pandas GBQ连接器查询该表。
  3. 使用Python变量替换构造并执行对该表的查询。