我使用两个具有相同列的不同存储引擎创建了两个表: table1(id,col1,col2)MyIsam table2(id,col1,col2)innodb 每个表包含1700000
我在2个表中为(col1,col2)创建了全文索引 我有两个关键字,我需要提取包含它们的结果: '学校'和'公共汽车' 我正在使用通配符来提取它们 select * from table1 where match(col1,col2)against('+ scho * + bus *')
结果不正确, 共计26573,查询耗时0.0009秒 行包含任何关键字'school'或'bus'
表2中的(innodb)结果是正确的, 总共369,查询花了0.0420秒 行包含两个单词'school'和'bus'
任何人都可以帮助我吗?
答案 0 :(得分:1)
我通过在+之前放置空格来解决这个问题 匹配(col1,col2)对('+ scho * + bus *')
但我有另一个问题,如果我想通过任何关键字搜索任何东西,它都无法显示, 如果我按关键字搜索“学校” 匹配(col1,col2)对('+ chool ') 0行