与LIKE - SQL / PHP完全匹配

cut 发布于 2019-03-09 mysql 最后更新 2019-03-09 14:41 0 浏览

鉴于文字:

"Hello, I'm from Hell",
"Hello, I'm from Ell"
和以下SQL子句:
SELECT * FROM table WHERE text LIKE '%ell%'
我同时获得了上面的文本,但我不想同时获得两个文本,因为我正在查找文本 “埃尔”而不是“地狱” 如果有人知道我的意思,你能帮我一下吗? 提前致谢! 编辑: 更好的例子 就像当你想要查找“大”这个词但它不能成为“更大”或“最大”
已邀请:

avelit

赞同来自:

选择完全匹配不区分大小写 SELECT * FROM表  其中LOWER(列)像BINARY LOWER('ell') 如果文本有多行,它可以工作。

rqui

赞同来自:

你也可以搜索一个空间吗?

SELECT * 
FROM table 
WHERE text LIKE '% ell%'
OR text LIKE 'ell%' // needed if string starts with ell

met

赞同来自:

你可以试试这个:

SELECT * FROM table WHERE text LIKE BINARY '%ell%'

uharum

赞同来自:

您可以使用MySQL Regex字边界匹配:

SELECT * FROM table WHERE text REGEXP '[[:<:]]ell[[:>:]]'
这匹配一个字符串,该字符串包含单词ell和任一侧的字边界。