MySQL索引原理以及最左前缀原则

数据的索引原理:

  • 最左前缀原则

    就是要考虑查询字段的字段顺序,只有遵守这个原则才能最大的提高使用效率

    • mysql会从左到右匹配,直到遇到范围查询(>,<,between, like)就停止匹配,比如联合索引(a,b,c,d)匹配a=1 and b=2 and c>2 and d=1,此时d字段是使用不到索引的功能的,如果这时索引的字段顺序是(abdc),此时d就会应用联合索引
    • 如果判断条件“=”,那么不会强调字段的顺序,mysql的查询优化器会自动识别形式:a=1 and c=2 and b=2字段顺序a,b,c不做区别
  • 联合索引提高查询效率的原理

    MySQL会为InnoDB的每个表简历聚集索引,如果表有索引会建立二级索引。聚集索引以主键建立索引,如果没有主键,以表中的唯一键建立,唯一键也会以隐式的创建一个字增的列来建立,聚集索引和二级索引都是一个B+树,B+树是数据按照一定顺序存在叶子节点且每页数据相连。

posted @ 2020-06-23 10:51  醉醺醺的  阅读(807)  评论(0编辑  收藏  举报