有些不好的標題可能會出現,但我試圖解釋我的意思。用於搜索和刪除多個關鍵列的SQL
我用這樣的SQL來建立一個列表
SELECT id
FROM parcel
WHERE id IN (113715, 113824, 113855, 113954, 114010, 114116, 114272, 114329)
其中ID
是在被隔離是唯一的,非常簡單的包裹表中的列。
但是有些表格使用許多列是唯一的。
SELECT id1, id2
FROM trip
WHERE id1, id2 IN ((113715, 113824), (113855, 113954), (114010, 114116),(114272, 114329))
最後的SQL顯然不工作。
我要選擇行,其中
id1 = 113715 and id2=113824 or
id1 = 113855 and id2=113954 or
id1 = 114010 and id2=114116 or
id1 = 114272 and id2=114329
在現實中,生成的SQL可以包含500 - 1000的ID。
我應該使用什麼SQL?
EDIT
這是一個生成的SQL。該ID來自另一臺服務器上的另一個數據庫,因此例如JOIN是不可能的。
這可能變慢。身份證從哪裏來?如果從表中可以加入 –
,就像你說的那樣,其中id1 = 113715和id2 = 113824或id1 = 113855和id2 = 113954或... – Ali
如果可能,我想使用IN運算符,因爲我認爲它更快 –