前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL 04 - 聚簇索引与非聚簇索引

SQL 04 - 聚簇索引与非聚簇索引

作者头像
Reck Zhang
发布2021-08-11 12:01:09
4460
发布2021-08-11 12:01:09
举报
文章被收录于专栏:Reck Zhang

聚簇索引与非聚簇索引

聚簇索引

在B+树上, 主索引的叶节点data域记录着完整的数据记录, 这种索引方式被称为聚簇索引. 因为无法把数据行存放在两个不同的地方, 所以一个表只能有一个聚簇索引.

非聚簇索引

辅助索引叶节点的data域记录着主键的值, 因此在使用辅助索引进行查找时, 需要先查找到主键值, 然后再到主索引中进行查找.

区别

聚簇索引和非聚簇索引的一个标志性区别就是聚簇索引的叶节点对应着数据页, 从中间级的索引页的索引行直接对应着数据页. 而非聚簇索引的索引B+树节点不是直接指向数据页. 如果表有聚簇索引, 则行定位器是行的聚簇索引键. 如果聚簇索引不是唯一的索引, SQL将添加在内部生成的值(称为唯一值)以使所有重复键唯一. SQL通过使用存储在非聚簇索引的行内的聚簇索引键搜索聚簇索引来检索数据行.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-08-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 聚簇索引与非聚簇索引
    • 聚簇索引
      • 非聚簇索引
        • 区别
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档