MySql MyIsam table 带全文搜索通配符
MySql MyIsam table with fulltext search wildcard
我用两个具有相同列的不同存储引擎创建了两个 table:
table1(id,col1,col2) MyIsam
table2(id,col1,col2) innodb
每个 table 包含根据 1700000
我在 2 table 秒内为 (col1,col2) 创建了全文索引
我有 2 个关键字,我需要提取包含它们的结果:
'school' 和 'bus'
我正在使用通配符来提取它们
select * 来自 table1,其中 match(col1,col2) 与 ('+scho*+bus*')
- 意思是完整的截词
- 平均值和
在table1(MyIsam)中结果不正确,
总共 26573,查询耗时 0.0009 秒
行包含任何关键字 'school' 或 'bus'
in table2(innodb)结果正确,
总共 369 个,查询耗时 0.0420 秒
行包含 'school' 和 'bus'
这两个词
谁能帮帮我?
我通过在 + 之前加上 space 解决了这个问题
匹配 (col1,col2) 与 ('+scho* +bus*')
但我还有一个问题,如果我想用任何关键字结尾的任何东西搜索,它都无法显示,
如果我按关键字搜索 "School"
匹配 (col1,col2) 对 ('+chool')
0 行
我用两个具有相同列的不同存储引擎创建了两个 table: table1(id,col1,col2) MyIsam table2(id,col1,col2) innodb 每个 table 包含根据 1700000
我在 2 table 秒内为 (col1,col2) 创建了全文索引 我有 2 个关键字,我需要提取包含它们的结果: 'school' 和 'bus' 我正在使用通配符来提取它们 select * 来自 table1,其中 match(col1,col2) 与 ('+scho*+bus*')
- 意思是完整的截词
- 平均值和
在table1(MyIsam)中结果不正确, 总共 26573,查询耗时 0.0009 秒 行包含任何关键字 'school' 或 'bus'
in table2(innodb)结果正确, 总共 369 个,查询耗时 0.0420 秒 行包含 'school' 和 'bus'
这两个词谁能帮帮我?
我通过在 + 之前加上 space 解决了这个问题 匹配 (col1,col2) 与 ('+scho* +bus*')
但我还有一个问题,如果我想用任何关键字结尾的任何东西搜索,它都无法显示, 如果我按关键字搜索 "School" 匹配 (col1,col2) 对 ('+chool') 0 行