MySql 使用 2 个字符的单词进行全文搜索
MySql Fulltext search using 2 character word
我设置了ft_min_word_len = 1
和运行宁show variables like 'ft%';
也显示相同。
也已经通过删除并重新创建全文索引来更新它们。
但是当我 运行 SELECT OriginalProductName FROM products WHERE MATCH (ProductName) AGAINST ('+samsung +tv' IN BOOLEAN MODE);
反对以 "Samsung Hg55nc890xf 3d 1080p Led lcd Tv Hdtv" 作为价值的行时 returns 0 结果。
当我执行 SELECT OriginalProductName FROM products WHERE MATCH (ProductName) AGAINST ('+samsung +led' IN BOOLEAN MODE);
时它按预期工作
我正在使用 MySQL 5.6.22。 Innodb 是 Table 引擎。
如何进行 MySql 全文搜索以搜索 2 个字符的单词,例如 tv、32、US 等...?
我发现此问题特定于 innodb
存储引擎。我已经通过添加解决了这个问题
[mysqld]
innodb_ft_min_token_size =2;
至 /etc/my.cnf
我设置了ft_min_word_len = 1
和运行宁show variables like 'ft%';
也显示相同。
也已经通过删除并重新创建全文索引来更新它们。
但是当我 运行 SELECT OriginalProductName FROM products WHERE MATCH (ProductName) AGAINST ('+samsung +tv' IN BOOLEAN MODE);
反对以 "Samsung Hg55nc890xf 3d 1080p Led lcd Tv Hdtv" 作为价值的行时 returns 0 结果。
当我执行 SELECT OriginalProductName FROM products WHERE MATCH (ProductName) AGAINST ('+samsung +led' IN BOOLEAN MODE);
我正在使用 MySQL 5.6.22。 Innodb 是 Table 引擎。
如何进行 MySql 全文搜索以搜索 2 个字符的单词,例如 tv、32、US 等...?
我发现此问题特定于 innodb
存储引擎。我已经通过添加解决了这个问题
[mysqld]
innodb_ft_min_token_size =2;
至 /etc/my.cnf