Mysql like ' ' 会不会用到索引
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql like ' ' 会不会用到索引相关的知识,希望对你有一定的参考价值。
mysql在使用like查询中,能不能用到索引?在什么地方使用索引呢?
在使用like的时候,如果使用‘%%’,会不会用到索引呢?
EXPLAIN SELECT * FROM `user` WHERE username LIKE ‘%ptd_%‘;
![技术分享](http://img1.ph.126.net/1WJjSZfbV0ddOanJAhnJQg==/2809120267590393403.png)
只是使用一个%的查询结果:
EXPLAIN SELECT * FROM `user` WHERE username LIKE ‘ptd_%‘;
![技术分享](http://img0.ph.126.net/zMhJ-aC2h3vtuKiu0wTDEg==/6631243687559807394.png)
这个使用到了索引(type == range)。
EXPLAIN SELECT * FROM `user` WHERE username LIKE ‘%ptd_‘;
![技术分享](http://img2.ph.126.net/3jBh_PBR-4MorRp_hmEMJg==/63613344754718057.png)
在前面使用%时也是全表扫描,没有使用到索引。
综上,mysql在使用like查询的时候只有不以%开头的时候,才会使用到索引。
以上是关于Mysql like ' ' 会不会用到索引的主要内容,如果未能解决你的问题,请参考以下文章
ERROR 3121 (HY000): Incorrect File Name 'xxxx'
请问各位大侠:oracle的存储过程返回值如果有0.2等这类小数时,为何前面的0会不显示,如何解决