我正在尝试使用全文搜索(在布尔模式下)来检索三个字母或更少字母的单词。
目前,如果我搜索类似“NBA”的内容,我不会得到任何结果。
但是,如果我将通配符运算符“*”附加到搜索字词中,我会得到结果。
我还读到你可以删除my.ini
中的三个字数限制,但我想知道是否有更好的方法可以动态执行此操作。
答案 0 :(得分:17)
本手册的这一部分可能会让您感兴趣:11.8.6. Fine-Tuning MySQL Full-Text Search (引用其中的一部分):
最小和最大长度 要索引的单词由
ft_min_word_len
和ft_max_word_len
系统变量。该 默认最小值为四 字符;默认最大值是 版本依赖。如果你改变了 无论是价值,你必须重建你的 FULLTEXT索引。
例如,如果你 想要三个字的单词 可搜索,你可以设置 放置ft_min_word_len
变量 选项文件中的以下行:[mysqld] ft_min_word_len=3
然后你必须重启服务器并且 重建你的FULLTEXT索引。
(您应该阅读该页面,有关我没有复制粘贴的更多信息;-))