MySql索引(一)Innodb引擎

Innodb引擎下的索引是B+树索引。

根据是否是聚集索引,又分为聚集索引和非聚集索引(也叫二级索引(Secondary Key)、辅助索引)。

聚集索引

百度百科定义:

聚集索引是指数据库表行中数据的物理顺序与键值的逻辑(索引)顺序相同。一个表只能有一个聚集索引,因为一个表的物理顺序只有一种情况,所以,对应的聚集索引只能有一个。如果某索引不是聚集索引,则表中的行物理顺序与索引顺序不匹配,与非聚集索引相比,聚集索引有着更快的检索速度。

一个表只能有一个聚集索引,即主键。【Innodb引擎的聚集索引的叶子节点的data域存储了一整行的数据】,所以InnoDB的数据文件本身就是主索引文件。

非聚集索引

一个表可以有多个非聚集索引。【Innodb引擎的非聚集索引的叶子节点的data域存储了主键】。

我们在设计表的时候,除了可以指定一个主键之外,还可以根据实际情况,再额外增加若干个索引。

比如学生表有三个字段{学号,姓名,年龄},主键是{学号},但是可以为{姓名}创建索引。

 

posted @   jiafeng  阅读(34)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示