我已经在3个字段的一小部分记录上设置了全文索引(尝试了3个字段的组合并且具有相同的结果),并且一些单词返回结果很好,但某些单词如’house’和’澳大利亚’不要(有趣的是,’澳大利亚’和’家’做).
这似乎很奇怪.如果我添加“WITH QUERY EXPANSION”我会得到结果,但它们现在不是最相关的.
任何人都知道为什么会这样?否则我将不得不求助于使用LIKE搜索,我更愿意包含相关性.
最佳答案
这可能是两件事:
> MySQL有一个默认的’停用词’列表,不包含在全文搜索中 – http://dev.mysql.com/doc/refman/5.5/en/fulltext-stopwords.html. “房子”和“澳大利亚”似乎不在该列表中,但您搜索的其他字词可能会受到影响.
>数据库中超过50%的行中出现的任何单词或3个字母或更短的单词也被视为停用词.如果您只是在一个只有几行的表格上测试全文搜索,那么50%的东西特别容易被发现.
如果你在谷歌搜索“mysql停用词”,你会发现更多关于它的信息,因为这是吸引了很多人的事情之一.