2012-04-26 156 views
1

是否有可能在sql中實現這樣的事情?多個搜索條件sql

ID!= {2,3} 

其中ID是一列。或者我必須使用多個OR語句?

回答

5

是,not in

ID not in (2,3) 

你可以閱讀更多here

+0

或'在(2,3)不是ID' - 我已經在過去的上面的語法問題 - 特別是當處理NULL值。 – 2012-04-26 21:07:18

+0

@MattTew。 NULL值是DB是「沒有」,所以你需要小心這些。不同的DBMS可以用其他方式處理。但除此之外,你有'不在'有什麼樣的問題? – gdoron 2012-04-26 21:09:45

+0

我不能說脫手。我只知道我在過去一直在想,爲什麼NOT IN不能正常工作,但是顛倒了語法(使用MySQL)。我想我也在使用子查詢來獲取集合。你的回答是正確的(我贊成它),只是加入我的2c。 – 2012-04-26 21:13:23

3

你必須嘗試用

ID NOT IN (2,3) 

或者

ID <> 2 or ID <> 3 
+0

你可能的意思是:'id <> 2 ** AND ** id <> 3'。你的條件將永遠是真實的.. ID不能等於2 **和**等於3在同一時間! – gdoron 2012-05-01 21:37:26