码迷,mamicode.com
首页 > 数据库 > 详细

Mysql like ' ' 会不会用到索引

时间:2016-09-29 07:53:02      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:

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 ' ' 会不会用到索引

标签:

原文地址:http://www.cnblogs.com/lnas01/p/5918558.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!