Mysql'match AGAINST'没有检索到正确的答案

时间:2014-01-31 11:47:13

标签: mysql sql

我有一个表' table1 '。它有一个记录:

type    id  title            description                    keywords   hidden 
poll    12  Who is best     Poll for selecting best leader

我有这个问题:

SELECT * FROM `table1` WHERE   MATCH(`title`,`description`,`keywords`,`hidden`) AGAINST ('Who is best' IN BOOLEAN MODE)

当我执行查询时,它返回null结果但没有错误

这个查询有什么问题?它应该返回一条现有记录,对吗?

表格是否需要额外的设置,而我们使用'IN BOOLEAN MODE'

1 个答案:

答案 0 :(得分:1)

忽略了一些常用词。请参阅stopword列表,其中包含您的所有三个搜索字词。

此外,短于4个字符的单词不会被编入索引。

您可以接受此操作,也可以通过修改止损列表或更改索引字词的长度限制来调整全文搜索。

How to modify the stopword list.

How to modify shortest/longest word length in a full text index

我还建议您阅读the manual on IN BOOLEAN MODE