SQL:LIKE 和 " ' ”

发布于 2024-12-10 11:47:39 字数 272 浏览 1 评论 0 原文

我必须获取此条目:“l\'arbre”。

这是我提出的各种请求之一:

SELECT id,nom FROM serie WHERE nom LIKE "%l\'%"

但它不起作用(返回 0 行)。

但这是有效的:

SELECT id,nom FROM serie WHERE nom LIKE "%\'%"

有人知道这个问题吗?

I have to get this entry: "l\'arbre".

Here is one of the various requests I've made:

SELECT id,nom FROM serie WHERE nom LIKE "%l\'%"

but it doesn't work (0 rows returned).

But this works:

SELECT id,nom FROM serie WHERE nom LIKE "%\'%"

Does anyone have an idea of the problem?

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

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

发布评论

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

评论(3

时光与爱终年不遇 2024-12-17 11:47:39

试试这个:

nom LIKE "%l\\\\'%" 

Try this one:

nom LIKE "%l\\\\'%" 
以可爱出名 2024-12-17 11:47:39

如果数据库的值为“l\'arbre”,则 “%l\'%” 将不起作用,因为 \ 是转义符字符,因此 l\' 转换为 l',它不会出现在 DB 值中。

尝试 LIKE "%\\\\\'%"

第一个 \\\\ 表示一个反斜杠,\' 表示撇号。

If the DB has the value "l\'arbre", "%l\'%" will not work since the \ is an escape character, so l\' translates to l' which does not appear in the DB value.

Try LIKE "%\\\\\'%"

The first \\\\ means one backslash, and the \' means the apostrophe.

依 靠 2024-12-17 11:47:39

由于数据库中有 'l\'arbre',因此您需要将查询更改为 ... LIKE "%l\\'%"。在当前查询中,反斜杠被解释为转义撇号的字符串转义字符。您需要将其解释为字面反斜杠,这意味着您需要使用反斜杠对其进行转义。

Since you have 'l\'arbre' in the database, you need to change the query to ... LIKE "%l\\'%". In your current query, the backslash is interpreted as being a string escape character that escapes the apostrophe. You need it to be interpreted as a literal backslash, which means you need to escape it with a backslash.

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