如何将 IN
或 NOT IN
子句作为变量传递给查询?
当我在下面的查询中传递变量时,我得到:
SELECT * FROM table_name WHERE column_name 'IN' ('product', 'category')
对于引号 'IN'
的存在触发错误
query_clause = 'IN'
##query_clause could equal 'NOT IN'
cur = my_connection.cursor()
cur.execute("SELECT * FROM table_name WHERE column_name %s ('product', 'category')", (query_clause,))
最佳答案
是的,这是预期的。请改用 bool 参数:
SELECT * FROM table_name
WHERE (column_name IN ('product', 'category')) = %s
然后您可以将 true 或 false 传递给参数。
关于python - 如何使用 python 将 IN 或 NOT IN 子句作为变量传递给 postgresql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38035031/