首页 > 代码库 > Mysql like ' ' 会不会用到索引
Mysql like ' ' 会不会用到索引
mysql在使用like查询中,能不能用到索引?在什么地方使用索引呢?
在使用like的时候,如果使用‘%%’,会不会用到索引呢?
EXPLAIN SELECT * FROM `user` WHERE username LIKE ‘%ptd_%‘;
上面的结果是全表扫描(type == ALL),并没有使用到索引。
只是使用一个%的查询结果:
EXPLAIN SELECT * FROM `user` WHERE username LIKE ‘ptd_%‘;
这个使用到了索引(type == range)。
EXPLAIN SELECT * FROM `user` WHERE username LIKE ‘%ptd_‘;
在前面使用%时也是全表扫描,没有使用到索引。
综上,mysql在使用like查询的时候只有不以%开头的时候,才会使用到索引。
Mysql like ' ' 会不会用到索引
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。