mysql 全文索引查找不出来

2020-02-25 23:05:56 +08:00
 aliipay

ngram_token_size 设置为 1

CREATE TABLE articles (
      id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
      title VARCHAR(200),
      FULLTEXT (title) WITH PARSER ngram
    ) ENGINE=InnoDB CHARACTER SET utf8mb4;

INSERT INTO articles (title) VALUES("a");
INSERT INTO articles (title) VALUES("b");
INSERT INTO articles (title) VALUES("f");

搜索 a,返回空。为什么?

select * FROM  articles  WHERE   MATCH (title) AGAINST ('+a' IN BOOLEAN MODE) ;

ps, 把 a 改成 b 或者 f 则能正常返回。

3810 次点击
所在节点    MySQL
6 条回复
aliipay
2020-03-08 11:11:49 +08:00
up,这么久没人回
kaffka
2020-03-13 22:45:04 +08:00
测试了下
1238 - Variable 'ngram_token_size' is a read only variable, Time: 0.001000s
默认是 2
很好奇你是怎么设置的
aliipay
2020-03-14 19:50:24 +08:00
@kaffka 直接修改配置文件然后重启 mysql
sakaf
2020-05-29 11:41:30 +08:00
后面解决了吗,遇到同样的问题= =
aliipay
2020-05-29 13:24:05 +08:00
@sakaf stopword 了解一下
sakaf
2020-05-29 14:18:29 +08:00
谢谢大佬😂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/647553

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX