MySQL全文搜索结果相关性

标签 mysql full-text-search

我正尝试在我的表格中搜索一些手机,并尝试通过全文搜索获得结果。我的查询是:

SELECT id,itemid,title,MATCH(title) AGAINST 
    ("SAMSUNG GALAXY S3" IN NATURAL LANGUAGE MODE) as score 
    FROM `deals`WHERE MATCH(title) AGAINST 
    ("SAMSUNG GALAXY S3" IN NATURAL LANGUAGE MODE) ORDER BY score desc;

我得到的结果如下图所示:

Search Result

我期望的是第二个结果出现在顶部,因为它是完全匹配的,但事实并非如此。有人可以纠正我在这里可能做错了什么。

谢谢。

编辑 bool 模式的结果 Results in boolean mode

最佳答案

恐怕“S3”太短,无法被全文搜索视为一个词。 请参阅文档的相关部分(默认的最小字长为 4 个字符)http://dev.mysql.com/doc/refman//5.5/en/server-system-variables.html#sysvar_ft_min_word_len

EDIT 您可以通过搜索来验证这一点,例如:

"SAMSUNG GALAXY S360"

关于MySQL全文搜索结果相关性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11080900/

相关文章:

php - 我不断使用 json_decode 获取数组到字符串的转换错误

search - 使用 lucene 进行多语言搜索

Solr(太阳黑子)在包含后缀时找不到部分单词匹配

algorithm - 简历匹配算法

python - python中的搜索方法和字符串匹配

mysql - 按集合中值的序列排序

PHP:在存储到 MySQL 数据库之前剥离链接(正则表达式剥离?)

mysql - 全文搜索 mysql 中的撇号

mysql按日期之间的距离排序

php - 无法弄清楚为什么我的 PHP 没有插入 MySQL 数据库