品易云推流 关闭
文章详情页
文章 > MySQL > mysql索引的最左原则是什么

mysql索引的最左原则是什么

头像

小妮浅浅

2021-05-20 17:43:51649浏览 · 0收藏 · 0评论

1、MySQL不会使用索引的情况:非独立的列

独立的列是指索引列不能是表达式的一部分,也不能是函数的参数。

2、前缀索引 

如果列很长,通常可以索引开始的部分字符,这样可以有效节约索引空间,从而提高索引效率。

3、多列索引和索引顺序

在多数情况下,在多个列上建立独立的索引并不能提高查询性能。理由非常简单,MySQL不知道选择哪个索引的查询效率更好。

4、避免多个范围条件

实际开发中,我们会经常使用多个范围条件,比如想查询某个时间段内登录过的用户:

     select user.* from user where login_time > '2017-04-01' and age between 18 and 30;

5、覆盖索引

如果一个索引包含或者说覆盖所有需要查询的字段的值,那么就没有必要再回表查询,这就称为覆盖索引。覆盖索引是非常有用的工具,可以极大的提高性能。

6、使用索引扫描来排序

MySQL有两种方式可以生产有序的结果集,其一是对结果集进行排序的操作,其二是按照索引顺序扫描得出的结果自然是有序的。如果explain的结果中type列的值为index表示使用了索引扫描来做排序。

以上就是mysql索引最左原则的介绍,希望对大家有所帮助。更多编程基础知识学习:python学习网

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图