【发布时间】:2020-12-02 05:47:31
【问题描述】:
我有一个带有全文索引的列名表 -
在这个表中有很多行,但其中一些包含短语“aberlour 18”,就像这里一样 -
但是当我使用全文搜索和表格中的确切名称进行搜索时 -
SELECT * FROM `whiskybase_bottles` WHERE MATCH(`name`) AGAINST('Aberlour 18 year old')
它只在第 6 位找到它 -
如何改进它以首先找到它?
我不想使用“LIKE”搜索,因为全文在其他情况下更适合我的需求。
我已经将“innodb ft min token size”参数减少为 2 而不是 3 以包含年龄语句并在其后重新创建索引 -
【问题讨论】:
-
您是否在 更改 ft_min_token_size 之后重建了有问题的 FT 索引?
-
是的,就像我写的那样,我在更改后重新创建了它
-
您能提供一个简单的测试用例供我们使用吗?
id和name列只有几十行。请验证测试是否失败。
标签: mysql search indexing full-text-search full-text-indexing