2009-11-19 75 views
14

爲什麼這個簡單的查詢返回「ORA-00936:缺少表達式」(該數據庫是Oracle,你可以告訴):在SQL查詢「NOT LIKE」

SELECT * FROM transactions WHERE id NOT LIKE '1%' AND NOT LIKE '2%' 

我覺得很傻,但我是什麼我做錯了?

回答

50

您錯過了第二個NOT LIKE中的字段名稱id。嘗試:

SELECT * FROM transactions WHERE id NOT LIKE '1%' AND id NOT LIKE '2%' 

在where子句中加入2個條件表達式,如id NOT LIKE '1%',不能用於列出ID是「不喜歡」多值AND

8

您需要在兩個表達式中指定列。

SELECT * FROM transactions WHERE id NOT LIKE '1%' AND id NOT LIKE '2%' 
7

你在NOT之前錯過了ID;它需要被指定。

SELECT * FROM transactions WHERE id NOT LIKE '1%' AND id NOT LIKE '2%'