zoukankan      html  css  js  c++  java
  • Innodb存储引擎——非聚集索引

      如果给表定义了主键,那么表在磁盘上的存储结构就由整齐排列的结构转变成了树状结构,也就是「平衡树」结构,换句话说,就是整个表就变成了一个索引,这就是所谓的「聚集索引」。 这就是为什么一个表只能有一个主键, 一个表只能有一个「聚集索引」,因为主键的作用就是把「表」的数据格式转换成「索引(平衡树)」的格式放置。

      非聚集索引和聚集索引一样, 同样是采用平衡树作为索引的数据结构。假如给user表的name字段加上索引 , 那么索引就是由name字段中的值构成,在数据改变时, DBMS需要一直维护索引结构的正确性。如果给表中多个字段加上索引 , 那么就会出现多个独立的索引结构,每个索引(非聚集索引)互相之间不存在关联。 

      非聚集索引和聚集索引的区别在于, 通过聚集索引可以查到需要查找的数据, 而通过非聚集索引可以查到记录对应的主键值 , 再使用主键的值通过聚集索引查找到需要的数据。不管以任何方式查询表, 最终都会利用主键通过聚集索引来定位到数据, 聚集索引(主键)是通往真实数据所在的唯一路径。

      但是也可以根据查询的结果建立复合索引或者多字段索引查询,为一个索引指定多个字段, 那么这个多个字段的内容都会被同步至索引之中,能加快查询的速度。另外,复合索引的属性顺序也会影响到查询的速度,具体较为优化的顺序要根据具体数据分布。

      参考链接:

      https://www.cnblogs.com/lykbk/p/wererereredfdf.html

      https://zhuanlan.zhihu.com/p/23624390?utm_source=wechat_session&utm_medium=social

    我好菜呀
  • 相关阅读:
    像asp.net Mvc一样开发nodejs+express Mvc站点
    js数组方法大全
    自己的时间规划
    7月暑假生活总结
    01. What Is Discrete Mathematics(中英字幕 by Ocean-藏心)
    找工作专题---二分查找
    angular.js 入门基础
    WCF实例管理
    是技术牛人,如何拿到国内IT巨头的Offer
    python
  • 原文地址:https://www.cnblogs.com/LinsenLi/p/9596488.html
Copyright © 2011-2022 走看看