gpt4 book ai didi

Python/psycopg2 WHERE IN 语句

转载 作者:IT老高 更新时间:2023-10-28 20:25:25 24 4
gpt4 key购买 nike

在 SQL 语句中通过 %s 获得列表 (countryList) 的正确方法是什么?

# using psycopg2
countryList=['UK','France']

sql='SELECT * from countries WHERE country IN (%s)'
data=[countryList]
cur.execute(sql,data)

就像现在一样,在尝试运行“WHERE country in (ARRAY[...])”后出错。除了通过字符串操作之外,还有其他方法吗?

谢谢

最佳答案

对于 IN 运算符,您需要 tuple而不是 list , 并从 SQL 字符串中删除括号。

# using psycopg2
data=('UK','France')

sql='SELECT * from countries WHERE country IN %s'
cur.execute(sql,(data,))

在调试期间,您可以检查 SQL 是否正确构建

cur.mogrify(sql, (data,))

关于Python/psycopg2 WHERE IN 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28117576/

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