MySQL Fulltextsearch +无法按预期工作

时间:2017-12-13 20:51:43

标签: mysql

与SOLR相比,我尝试测试MySQL Fulltextsearch。我设置了一个InnoDB表,其中包含一个int-key和一个包含fulltextindex的longtext字段。

CREATE TABLE cvtext(   id int(11)NOT NULL AUTO_INCREMENT,   cvtext longtext NOT NULL,   PRIMARY KEY(id),   FULLTEXT KEY cvtextcvtext) )ENGINE = InnoDB AUTO_INCREMENT = 6 DEFAULT CHARSET = utf8;

顺便说一句 - 我使用的是MySQL 4.6.16和ft_min_word_len = 3。

我的问题是关于布尔搜索:

1)从cvtext中选择*,其中MATCH(cvtext)AGAINST('+ SQL') =>结果:

  • 2 oracle SQL数据库开发人员
  • 1 oracle SQL database entwickler
  • 3 oracle SQL数据库
  • 5 oracle SQL datenbank开发者entwickler

2)从cvtext中选择*,其中MATCH(cvtext)AGAINST('+ SQL + oracle') =>结果:

  • 2 oracle SQL数据库开发人员
  • 1 oracle SQL database entwickler
  • 3 oracle SQL数据库
  • 5 oracle SQL datenbank开发者entwickler
  • 4 oracle datawarehouse开发者entwickler

所以第一个查询是i.m.h.o.更正并仅返回包含SQL的记录。第二个查询应该这样做,因为我使用'+'但它也返回记录no 4.它不包含SQL。

任何想法可能是错误的或者我不理解查询逻辑?

0 个答案:

没有答案