MySQL全文搜索无法对三个字符进行搜索

7

我在我的网站上使用全文搜索实现了搜索功能。

通常情况下它工作正常,但有时候不行,例如当我使用关键词"ship"搜索时可以得到结果,但使用"shi"却没有结果。

但是它应该返回结果。请帮我找出原因。


你是如何实现的呢?如果你想让我们找到错误,你应该给我们看代码。 - Imp
1个回答

9

ft_min_word_lenft_max_word_len 是系统变量,用来定义索引的单词最小和最大长度。默认的最小值为4个字符,所以不能处理3个字符的单词。

如果你想搜索三个字符的单词,需要修改这个变量的值,并重建FULLTEXT索引。你可以在配置文件中修改ft_min_word_len变量的值,也可以使用超级用户权限设置这个环境变量:

  SET  ft_min_word_len=3

在这里获取更多细节:优化MySQL全文搜索


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接