为什么这个简单的查询返回'ORA-00936:missing expression'(数据库是Oracle,你可以告诉):
SELECT * FROM transactions WHERE id NOT LIKE '1%' AND NOT LIKE '2%'
我觉得很傻,但我做错了什么?
答案 0 :(得分:64)
您错过了第二个id
中的字段名称NOT LIKE
。尝试:
SELECT * FROM transactions WHERE id NOT LIKE '1%' AND id NOT LIKE '2%'
where子句中的AND
连接2个完整条件表达式,例如id NOT LIKE '1%'
,不能用于列出id为“不喜欢”的多个值。
答案 1 :(得分:10)
您需要在两个表达式中指定列。
SELECT * FROM transactions WHERE id NOT LIKE '1%' AND id NOT LIKE '2%'
答案 2 :(得分:9)
你错过了NOT之前的id;它需要指定。
SELECT * FROM transactions WHERE id NOT LIKE '1%' AND id NOT LIKE '2%'
答案 3 :(得分:1)
在“与”之后和“或”之后,查询已经忘记了所有内容。
我也不知道它与任何SQL /编程语言有关。
if(SOMETHING等于“ X”或SOMETHING等于“ Y”)
不喜欢“ A%”的列和不喜欢“ B%”的列