MySQL加入和匹配/反对搜索失败

时间:2011-05-08 03:14:55

标签: mysql sql full-text-search match-against

我基本上试图创建一个搜索来查找文章(或作者的文章)。我最终得到了这个问题:

   SELECT `articles`.*, `authors`.*
     FROM `articles`
LEFT JOIN `authors` ON (`authors`.`id` = `articles`.`author_id`)
    WHERE MATCH (`articles`.`title`, `articles`.`description`)
            AGAINST ("test")
       OR MATCH (`authors`.`first_name`, `authors`.`last_name`)
            AGAINST ("test")
 GROUP BY `articles`.`id`

我确保所有四个匹配的字段都是FULL TEXT索引。搜索匹配并查找用户名为“Kevin”的所有文章,但如果我搜索名为“Test”的文章(存在)则不匹配。

1 个答案:

答案 0 :(得分:0)

匹配将找到“停止”字词的分数。

停用词是在结果的50%以上出现的词,
或者在官方停止词汇列表中。

请参阅:http://dev.mysql.com/doc/refman/5.5/en/fulltext-stopwords.html
并且:http://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html

对于微调匹配,请参阅:http://dev.mysql.com/doc/refman/5.5/en/fulltext-fine-tuning.html