每个人都知道LIKE太慢了,但是当我尝试使用MATCH来代替它时,它是无用的。
我需要一些操作数,当" part“是单词的一部分而不是一个完整的单词时,它会给出像'%part%‘这样的结果。
我已经试过了
SELECT * FROM `table` WHERE MATCH (title) AGAINST ('*part*' IN BOOLEAN MODE)
SELECT * FROM `table` WHERE MATCH (title) AGAINST ('+*part*' IN BOOLEAN MODE)它不能工作
有什么解决方案吗?
发布于 2018-04-19 01:15:12
只能从单词的开头开始使用通配符匹配单词。正如documentation所解释的:
*
星号用作截断(或通配符)运算符。与其他运算符不同,它被附加到要受影响的单词之后。如果单词以*运算符之前的单词开头,则匹配。
https://stackoverflow.com/questions/49905399
复制相似问题