0
當我必須在語句中傳遞多個值時,我在Python中編寫PostgreSQL select語句時遇到問題。以下是示例示例。如何在PostgreSQL select語句中將數組賦值爲變量?
from sqlalchemy import create_engine
values = [ 'a' , 'b' ]
con = create_engine(conn_string)
results = con.execute("select * from table where var in (%s)", [ values ])
我能夠使用單個值運行查詢,但獲取數組的格式錯誤。
在重複的情況下,你需要改變'?''到%s'因爲Postgres使用不同的佔位符,但原理是相同的。 – roganjosh
如果您使用psycopg2作爲您的DB-API驅動程序,您可以將它作爲參數傳遞給一個元組,它將爲IN運算符形成一個合適的表單:http://initd.org/psycopg/docs/usage。 HTML#元組適應。無需手動創建逗號分隔的佔位符。 –