2010-04-04 89 views
-1

任何人都可以幫我這個MySQL查詢:Mysql的批量刪除使用「不」

delete from generic__campaings_included where dealer_id not in ('2,3,4') and campaing_id = '1' 

當我執行此查詢,我沒有得到正常結果。除2(dealer_id)以外的所有行都被刪除。

如何在「和」運算符中使用「not in」?

+3

它確實如果你不確定,首先幫助運行一個'select',檢查你是否有'where'條款是正確的(或者即使你有這個條款)。實際上,每次都這樣做是值得的。 – shylent 2010-04-04 11:01:40

+0

@shylent +1 - 它也支付使用事務控制,所以你可以'ROLLBACK',如果你搞砸了。 – amphetamachine 2010-04-04 12:39:35

回答

3

難道這不是沒有單引號?

delete from generic__campaings_included where dealer_id not in (2,3,4) and campaing_id = 1 

或本如果列串

delete from generic__campaings_included where dealer_id not in ('2','3','4') and campaing_id = '1' 

您刪除行,其中dealer_id <> '2,3,4'(即一個字符串,而不是2一個,3或4)

+0

對!非常感謝! – Nadir 2010-04-04 11:36:13