数据库篇—聚簇索引和非聚簇索引

181 阅读1分钟

什么是聚簇索引和非聚簇索引?

  • 聚簇索引(聚集索引):数据和索引放在一块,B+树的叶子节点保存了整行数据,有且只有一个。
  • 非聚簇索引(二级索引):数据和索引分开存储,B+树的叶子节点保存对应的主键,可以有多个。

什么是回表查询?

答:回表查询,与聚簇索引和非聚簇索引有关系,回表的意思是通过非聚簇索引找到对应的主键值,然后通过主键值找到聚簇索引对应的整行数据。

创建索引的原则

  • 大前提,表中的数据量超过10万以上,才会创建索引,并且添加索引的字段是查询比较频繁的字段
  • 通常创建索引的时候都是使用复合索引来创建,一条sql的返回值,尽量使用覆盖索引,如果字段的区分度不高的话,把它放在组合索引后面的字段。
  • 如果某一个字段的内容较长,考虑使用前缀索引来使用。但索引的数量也要控制,因为添加索引也会导致新增的速度变慢。