0
我想從表中選擇其中一列的值等於列表的值的表中選擇。例如:Python sqlite3內部聯接與python列表
TABLE
------------
ID price
a 100
b 200
...
z 2600
python list:[「a」,「d」,「e」]。我想找到每個ID的價格。這樣做的顯而易見的方法是在ID上進行JOIN,但該列表不是表格。我該怎麼辦?
我想從表中選擇其中一列的值等於列表的值的表中選擇。例如:Python sqlite3內部聯接與python列表
TABLE
------------
ID price
a 100
b 200
...
z 2600
python list:[「a」,「d」,「e」]。我想找到每個ID的價格。這樣做的顯而易見的方法是在ID上進行JOIN,但該列表不是表格。我該怎麼辦?
您可以將列表寫入臨時表,然後加入。 要使連接更高效,請確保至少有一個連接列(最好是較小表的連接列)被編入索引。
但是,如果列表不是太長,你可以簡單地使用IN operator:
SELECT *
FROM MyTable
WHERE ID IN ('a', 'd', 'e')
嗯那就是我害怕的:(謝謝! – WindowsMaker
你並不需要爲這個聯接。請參閱:http://stackoverflow.com/questions/283645/python-list-in-sql-query-as-parameter –
說,表和列表都很大。一個字符串加入WHERE子句會非常低效 – WindowsMaker