文档章节

mysql之辅助索引

Lubby
 Lubby
发布于 2015/12/26 12:17
字数 307
阅读 654
收藏 7

数据库中索引作用非常大,能够快速缩小查询范围,有利于排序。所以索引的相关知识非常重要。

Mysql的innodb使用的是B+树作为索引的数据结构,B+树非常适合文件系统。B+树的数据结构大家可以自己查询相关资料。

innodb存储引擎的索引最主要的就是主键索引,主键索引实际上使用了聚集索引。

聚集索引:

            聚集索引实际上是一种数据存储方式,把索引和实际数据行放在同一个数据结构中。数据行不可能放在两个不同的地方,所以一个表只能有一个聚集索引。

非聚集索引实:

            所有的非聚集索引实际上都可以被称为辅助索引。非聚集索引的叶子节点实际上放的不是行的地址,而是主键键值。这样就能通过主键键值去找到相应的数据行。

覆盖索引:

            覆盖索引就是把索引对应那列的值存在索引里面,这样直接找到索引就能渠道相应列的值。

© 著作权归作者所有

Lubby
粉丝 55
博文 106
码字总数 59348
作品 0
杭州
程序员
私信 提问
MySQL 索引选择原则分析(一)

目的 数据库中很重要的设计一部分,莫过于索引了。B+树索引是MySQL中设计的索引。B+树索引是基于B+树基础发展而来的。 然而,在理解了B+树索引结构以后,对优化SQL会事半功倍。还针对前面MyS...

tara_qri
2015/10/13
140
0
Using MRR(Multi-Range Read )

Using MRR(Multi-Range Read ) MySQL 5.6版本提供了很多性能优化的特性,其中之一就是 Multi-Range Read 多范围读(MRR) , 它的作用针对基于辅助/第二索引的查询,减少随机IO,并且将随机IO转...

秋风醉了
2015/08/23
0
0
性能优化案例分析之一:软删除是慢查询的罪魁祸首?

背景 在Rails项目里面,为了实现软删除,我们经常会使用 actsasparanoid 这个gem。它会给数据库表添加一个deletedat栏位,当删除数据时给这个栏位设置当前时间,查询数据时由于设置了 defaul...

quakewang
2017/11/08
0
0
MySQL非聚簇索引&&二级索引&&辅助索引

MySQL非聚簇索引&&二级索引&&辅助索引 mysql中每个表都有一个聚簇索引(clustered index ),除此之外的表上的每个非聚簇索引都是二级索引,又叫辅助索引(secondary indexes)。 以InnoDB来...

秋风醉了
2015/08/21
0
0
MySQL 索引选择原则分析(二)

2:MySQL索引选择规则(唯一索引查询) studentsorigin表中只有主键,没有建立索引。 select id, name from studentsorigin; 根据MySQL 索引选择原则分析(一)2.1来分析,所以只能是全表扫描...

tara_qri
2015/10/14
24
0

没有更多内容

加载失败,请刷新页面

加载更多

typescript 接口 函数类型 可索引类型

函数类型 可索引类型 数字索引签名 字符串索引签名 数字索引签名返回值 必须是 字符串索引签名返回值的子集 只读索引签名

lilugirl
今天
3
0
Oracle SQL语法实例合集

如需转载请注明出处https://my.oschina.net/feistel/blog/3052024 目的:迅速激活Oracle SQL 参考:《Oracle从入门到精通》 ------------------------------------------------------------......

LoSingSang
今天
2
0
增加 PostgreSQL 服务进程的最大打开文件数

https://serverfault.com/questions/628610/increasing-nproc-for-processes-launched-by-systemd-on-centos-7 要在systemd的配置里加才行...

helloclia
今天
2
0
组合模式在商品分类列表中的应用

在所有的树形结构中最适合的设计模式就是组合模式,我们看看常用商品分类中如何使用。 先定义一个树形结构的商品接口 public interface TreeProduct { List<TreeProduct> allProducts(...

算法之名
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部