【后端面经】MySQL主键、唯一索引、联合索引的区别和作用 全球速讯
2023-06-18 11:37:30来源:博客园
(资料图)
目录0. 简介1. 主键2. 唯一索引3. 联合索引4. 索引对数据库操作的影响5. 其他索引5.1 普通索引5.2 全文索引5.3 前缀索引6. 总结7. 参考资料0. 简介索引是一类特殊的文件
,用来存储检索信息,使数据库查找更加快速。
主键是一类特殊的唯一索引,选择某一列元素作为主键,用来表示每一行元素的特殊性,其特点如下
在一个数据表中只有一个主键;主键不能为空(null);主键的列数据不能重复(唯一索引的特点)。2. 唯一索引唯一索引是数据库中的一个索引类型,用来保证某列元素的数据唯一性,其特点如下:
一个数据表中可以有多个唯一索引;唯一索引可以为空(null);唯一索引的列数据不能重复。3. 联合索引当一个索引由多个列组成时,称为联合索引,主要用于快速查找某一特殊元素,其特点如下:
列顺序很重要:ABC和CBA是两类不同的联合索引;一个数据表中可以有多个联合索引。4. 索引对数据库操作的影响索引的使用目的是为了加快查找数据的速度。
读(查找数据)通过检索索引文件而不是整个数据库文件,能够加快读数据的速度。写(更新数据、增删改)索引文件是独立于数据文件的,因此在写数据的时候,需要同时更新索引文件和数据文件,因此会降低写数据的速度。5. 其他索引5.1 普通索引和一般索引相比,允许列数据重复,作用是加快数据访问速度。特点如下:
一个数据表中可以有多个唯一索引;普通索引可以为空(null);普通索引的列数据能重复。5.2 全文索引用来加快对大文本数据关键字的检索,MySQL5.6
之后InnoDB也支持该索引。
仅针对字符串类型的数据,只索引字符串的前几个字符,而不是整个字符串。因此索引文件更小。
6. 总结对上述的几种索引的特点对比如下所示:
7. 参考资料参考博客-1参考博客-2
标签: