我刚用BigQuery和一些东西转储到SQL中,所以我对这类东西不太了解。当前正在尝试创建一个输入字符串的方法(要取出的数据集名称)。但是,我似乎不能在不返回错误的情况下将字符串放入我想要的变量中。
我查看了如何为SQL内容添加变量,但大多数解决方案都不适合我的情况。然后,我在“”变量之前添加了$s并添加了s。
import pandas as pd
import bq_helper
from bq_helper import BigQueryHelper
# Some code about using BQ_helper to get the data, if you need it lmk
# test = `data.patentsview.application`
query1 = s"""
SELECT * FROM $s
LIMIT
20;
"""
response1 = patentsview.query_to_pandas_safe(query1)
response1.head(20)上面的代码返回错误代码。
File "<ipython-input-63-6b07957ebb81>", line 8
"""
^
SyntaxError: invalid syntax 编辑:原代码工作,但必须手动蛮力是这样
query1 = """
SELECT * FROM `patents-public-data.patentsview.application`
LIMIT
20;
"""
response1 = patentsview.query_to_pandas_safe(query1)
response1.head(20)发布于 2019-07-07 22:43:25
如果我对你的理解是正确的,这可能就是你想要的:
#making up some variables:
vars = ['`patents-public-data.patentsview.application','`patents-private-data.patentsview.application']
for var in vars:
query = f"""SELECT * FROM {var}
LIMIT
20;
"""
print(query)输出:
SELECT * FROM `patents-public-data.patentsview.application
LIMIT
20;
SELECT * FROM `patents-private-data.patentsview.application
LIMIT
20;发布于 2019-07-07 22:38:34
我认为这应该有帮助:named-python
若要指定命名参数,请使用
@字符,后面跟着标识符(如@param_name)。
https://stackoverflow.com/questions/56926069
复制相似问题