0x00 概述
之前写过一篇Mysql B+树学习,简单的介绍了B+数以及MySql使用B+树的原因,
有了这些基础知识点,对MySql索引的类型以及索引使用的一些技巧,就比较容易理解了。...select a from table xxx where b = 2
像上面这个语句,如果只是为列b建立索引,那么执行这个SQL是可以用到索引的,但是由于a列的数据并没有在这个b索引中,索引需要再次访问聚集索引文件...这里再举一个例子,分页查询
select id,code from xxxx order by age limit 50000,10;
如果只是在age列建立索引的话,这个SQL查询的效率不高,但是建立...0x04索引列不要参与计算
B+数存的是key和数据,如要查询的时候,需要对树中的数据先计算后再比较,代价太大了,也极其的慢,因此索引列使用了函数,压根就无法用到索引,MySql也不支持这样做。...因为像b=11或者b in (11,22)这种查询,
MySql是会优化的,可以用到索引的,可以放心使用。
参考
参考2