MySQL实战05の索引(下)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL实战05の索引(下)相关的知识,希望对你有一定的参考价值。

 

1. 覆盖索引

索引k上已经包含了我们的查询需求,称之为覆盖索引。
好处:
覆盖索引可以减少树的搜索次数,显著提升性能。

 

2. 前缀索引

联合索引:多个字段组成的索引。
最左前缀:可以是联合索引的最左N个字段,也可以是字符串索引的最左M个字符。
如何安排索引内的字段顺序呢?
(1)如果调整顺序,可以减少维护一个索引,那么这个顺序往往就是需要优先考虑采用的。
(2)考虑的原则就是空间

 

3. 索引下推

select * from user where name like 张% and age =10;联合索引(name,age)

mysql5.6之前,根据索引找到张开头的字段开始一个一个回表,到主键索引上找出数据行,在对比字段。 在MySQL5.6引入索引下推优化,可以在索引遍历过程中,多索引字段包含字段先做判断,直接过滤掉不满足条件的记录,减少回表次数。

 

总结

理解索引的概念,覆盖索引,前缀索引,索引下推。

在满足需求的情况下,尽量少的访问资源是数据库设计的重要原则之一。

原文地址:https://time.geekbang.org/column/article/69636

 


以上是关于MySQL实战05の索引(下)的主要内容,如果未能解决你的问题,请参考以下文章

05 | 深入浅出索引(下) 学习记录

Day869.索引(下) -MySQL实战

Day869.索引(下) -MySQL实战

关于MySQL查询优化 の 30条忠告

Mysql实战篇之普通索引和唯一索引--01

mysql实战经典案例(高级篇)