Mysql中某张表有几百万的数据,使用like查询不走索引如何优化?

提问者:帅平 问题分类:数据库
Mysql中某张表有几百万的数据,有一篇article相关的文章,里面有一个字段tile全是中文,在业务中需要使用like查询,例如: where title like '%技术%',此时给title字段添加了索引之后查询还是很慢,使用explain查看的时候发现没有走索引,请问如何优化?
(备注:这里是小业务,没必要使用elasticsearch,成本有点高,希望可以直接在mysql中进行优化即可)
1 个回答
我是蓝天i
我是蓝天i
这里可以使用索引下推的功能,也就是找一个其他的字段与title建立一个联合索引,例如每篇文章有分类type字段对吧?那么我们给type和title添加一个联合索引即可,在查询的时候示例如下:
where type=1 and title like '%技术%'

此时mysql就会进行索引下推,就可以发现like查询变快了。
发布于:2个月前 (07-28) IP属地:四川省
我来回答