mysql全文搜索部分匹配和引号

时间:2012-12-10 10:18:17

标签: mysql full-text-search

在我对我的数据库进行规范化后,我现在正在myiasm表上使用全文搜索。

我有几个搜索方案

  1. 在“你好朋友

  2. 中搜索”你好“
  3. 搜索“hell”IN“你好朋友,欢迎来到地狱”

  4. 搜索'fri'结束“in'来玩fri”结束'

  5. 我需要最佳匹配并且目前正在使用

    SELECT cu.ID as UID ,MATCH cu.content AGAINST  ('hell')  as relevance
    FROM cht_user cu 
    JOIN cht_agent_script cas ON ( cas.UID = cu.ID AND cas.AID = '315') 
    WHERE MATCH cu.content AGAINST ('hell')  
    ORDER BY relevance DESC 
    

    问题是

    1. 3号不会给出结果

    2. 2号不会给出结果

    3. 数字1是唯一有效的

1 个答案:

答案 0 :(得分:0)

首先,正如他们在此post中解释的那样,向您的表中添加更多数据。

其次,查看FULLTEXT停用词:http://dev.mysql.com/doc/refman/5.1/en/fulltext-stopwords.html

Mysql忽略单词列表,您可以在该链接中看到它们。全文搜索会忽略“你好”。

因此,请尝试在表格中添加更多记录。然后重做全文索引:

OPTIMIZE TABLE cht_user;

如果您仍然遇到问题请告诉我

希望这有助于你