“不喜欢”在 SQL 查询中

发布于 2024-08-11 11:33:53 字数 173 浏览 6 评论 0原文

为什么这个简单的查询会返回“ORA-00936:缺少表达式”(正如您所知,数据库是Oracle):

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

我觉得很傻,但我做错了什么?

Why does this simple query return 'ORA-00936: missing expression' (the database is Oracle as you can tell):

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

I feel silly, but what am I doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

慈悲佛祖 2024-08-18 11:33:53

您错过了第二个 NOT LIKE 中的字段名称 id。尝试:

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

where 子句中的 AND 连接 2 个完整条件表达式,例如 id NOT LIKE '1%' 并且不能用于列出 id 为的多个值‘不喜欢’。

You have missed out the field name id in the second NOT LIKE. Try:

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

The AND in the where clause joins 2 full condition expressions such as id NOT LIKE '1%' and can't be used to list multiple values that the id is 'not like'.

吲‖鸣 2024-08-18 11:33:53

您需要在两个表达式中指定列。

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

You need to specify the column in both expressions.

SELECT * FROM transactions WHERE id NOT LIKE '1%' AND id NOT LIKE '2%'
缺⑴份安定 2024-08-18 11:33:53

你在 NOT 之前错过了 id;它需要被指定。

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

You've missed the id out before the NOT; it needs to be specified.

SELECT * FROM transactions WHERE id NOT LIKE '1%' AND id NOT LIKE '2%'
请叫√我孤独 2024-08-18 11:33:53

在“AND”和“OR”之后,QUERY 已经忘记了它的全部内容。

我也不知道它是关于任何 SQL/编程语言的。

if(某物等于“X”或某物等于“Y”)

不像“A%”的列并且不像“B%”的列

After "AND" and after "OR" the QUERY has forgotten what it is all about.

I would also not know that it is about in any SQL / programming language.

if(SOMETHING equals "X" or SOMETHING equals "Y")

COLUMN NOT LIKE "A%" AND COLUMN NOT LIKE "B%"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文