前一个视频教程里面说了,如果是要使用 like%%不让索引失效,那么就需要建立覆盖索引,然后顺序,字段长度一致,能让索引覆盖住,大致是这么个意思,但是后一个视频小结的时候,确是如下情况,
但是小测试如上图的倒数二,三,却说没有使用b,c索引,感觉这和前一个视频的说法有点矛盾,求数据库大神,帮忙进来看看

解决方案 »

  1.   

    满足条件的数据量在总数据量中的占比,select 输出的字段是否包含在索引中,这些也会对是否使用索引造成影响的
      

  2.   

    like %%一般不会使用索引,这个意思是说用不了 索引查找(类似于书后面的index,你直接按照A-Z找,速度很快),但实际上还是可以用索引扫描的(从头到尾把书后面的index看一遍,看看哪些是符合要求的数据),这个是基本的概念。很多教程可能没有说清楚这一点。另外,上面说的是理论上的情况,可以用索引的情况,但是最后到底用不用索引,是mysql的优化器决定的,也就是你的看执行计划explain 命令可以显示执行计划。