gpt4 book ai didi

python - 使用多个 AND 语句的 Pandas read_sql_query

转载 作者:太空宇宙 更新时间:2023-11-04 07:55:52 26 4
gpt4 key购买 nike

我正在尝试在 python pandas 中组合一个 SQL 查询。我尝试了不同的方法,但总是出现以下错误:提供的绑定(bind)数量不正确。当前语句使用 6 个,提供了 3 个。

我的代码如下。我做错了什么?

conn = sqlite3.connect(my_db)
df = pd.read_sql_query(
con = conn,
sql = """SELECT * FROM {table}
WHERE @var1 = (?)
AND @var2 = (?)
AND @var3 = (?)
;""".format(table=table),
params= (value1, value2, value3),
)

最佳答案

正如您所说,@var1@var2@var3 都是列名。

但是,SQL 将 @ 符号解释为您稍后将在代码中提供的值的参数。

因此,由于三个 (?) 和三个 @var,您的 SQL 代码需要 6 个值。但是您只提供了 3 个值(对于 (?)),这意味着上述错误正在发生。

我建议您在命名您的列时不要使用 '@' 以减少出错的机会。

参见 this question进一步说明。

关于python - 使用多个 AND 语句的 Pandas read_sql_query,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49049246/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com