索引

索引

索引是什么

索引是一种数据结构,用于协助快速查询、更新数据库表中的数据

索引的类型

唯一索引/普通索引

  • 唯一索引:明确规定了该索引不会出现重复值,查询时查到符合条件的值就停止查询
  • 普通索引:查询时查到符合条件的值会继续查询,直到查到不符合条件的值

主键索引/普通索引

  • 主键索引:叶子节点存放数据
  • 普通索引:叶子节点存放主键值,需要回表才能得到数据

聚簇索引/非聚簇索引

  • 聚簇索引:索引顺序与数据存储顺序一致/叶子节点放数据,一张表只能有一个聚簇索引,主键索引就是一种聚簇索引
  • 非聚簇索引:叶子节点放主键值或者物理地址,与聚簇索引相比,需要回表或寻址操作

联合索引

  • 由多个字段组成的索引

覆盖索引

  • 索引已经包含了查询所需的所有字段,可以不用回表

索引的实现数据结构

  • B+树及B+树的变种
  • 哈希表
  • 有序数组

索引的优缺点

优点

  • 加快数据检索速度

缺点

  • 索引需要占用物理空间
  • 创建和维护索引需要耗费时间

索引的使用场景

  • 主键自动建立唯一索引
  • 频繁作为查询条件的字段应该创建索引
  • 查询与其他表关联的字段,外键关系建立索引
  • 高并发下创建组合索引

不建议索引的场景

  • 表记录过小
  • 经常增删改的表
  • 数据重复且分布平均的表字段(例如性别)
  • where用不到的字段

** 注:仅用于学习交流**

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值