全文搜索不排除-xxxword

时间:2016-10-06 08:32:34

标签: mysql full-text-search

我们在法语CMS(SPIP)上使用全文搜索。使用减号搜索的结果似乎不正确。我们在phpMyAdmin中尝试了CMS生成的sql请求:

SELECT t.id_zotspip, t.titre, t.resume, 
    MATCH(t.`titre`) AGAINST ('+corrosion    -bacteria' IN BOOLEAN MODE) * 10 
    + MATCH(t.`titre`,t.`resume`) AGAINST ('+corrosion -bacteria' IN BOOLEAN MODE) * 2.2 AS score 
FROM `spip_zotero311`.spip_zitems AS t 
WHERE ((MATCH(t.`titre`) AGAINST ('+corrosion -bacteria' IN BOOLEAN MODE))
     OR (MATCH(t.`titre`,t.`resume`) AGAINST ('+corrosion -bacteria' IN BOOLEAN MODE))) 
GROUP BY t.id_zotspip ORDER BY score DESC LIMIT 0,500 

我们在简历中得到细菌的结果......

表的类型是MyISAM,但基类型是InnoDB。

有什么建议吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

问题出在OR内的where子句中。您应该将OR内的WHERE替换为AND