Mysql fulltext boolean ignore phrase

时间:2011-06-10 02:40:17

标签: mysql boolean full-text-search

我正在努力想出一个与“猴子”相匹配的mysql布尔搜索,但是忽略/没有考虑“猴子生意”的匹配。

以下是一般性的想法,但它否定了价值。我需要它不要将行与“猴子业务”匹配,除非它们在文本的其他地方之后还有“猴子”没有“业务”。

SELECT * FROM table
MATCH (title) against ('+monkey ~"monkey business"' IN BOOLEAN MODE);

有可能吗?在此先感谢您提供任何帮助!我意识到这可以通过更好的搜索引擎来完成,目前我可以使用全文。

1 个答案:

答案 0 :(得分:0)

我对此进行了测试并且有效:

SELECT * FROM table
WHERE MATCH (title) against ('+monkey' IN BOOLEAN MODE)
AND NOT MATCH (title) against ('+"monkey business"' IN BOOLEAN MODE);

p.s我也尝试了布尔否定运算符:

AND MATCH (title) against ('-"monkey business"' IN BOOLEAN MODE)

但它不起作用。