首页>快讯 > 正文

【后端面经】MySQL主键、唯一索引、联合索引的区别和作用 全球速讯

2023-06-18 11:37:30来源:博客园


(资料图)

目录0. 简介1. 主键2. 唯一索引3. 联合索引4. 索引对数据库操作的影响5. 其他索引5.1 普通索引5.2 全文索引5.3 前缀索引6. 总结7. 参考资料0. 简介

索引是一类特殊的文件,用来存储检索信息,使数据库查找更加快速。

1. 主键

主键是一类特殊的唯一索引,选择某一列元素作为主键,用来表示每一行元素的特殊性,其特点如下

在一个数据表中只有一个主键;主键不能为空(null);主键的列数据不能重复(唯一索引的特点)。2. 唯一索引

唯一索引是数据库中的一个索引类型,用来保证某列元素的数据唯一性,其特点如下:

一个数据表中可以有多个唯一索引;唯一索引可以为空(null);唯一索引的列数据不能重复。3. 联合索引

当一个索引由多个列组成时,称为联合索引,主要用于快速查找某一特殊元素,其特点如下:

列顺序很重要:ABC和CBA是两类不同的联合索引;一个数据表中可以有多个联合索引。4. 索引对数据库操作的影响

索引的使用目的是为了加快查找数据的速度。

读(查找数据)通过检索索引文件而不是整个数据库文件,能够加快读数据的速度。写(更新数据、增删改)索引文件是独立于数据文件的,因此在写数据的时候,需要同时更新索引文件和数据文件,因此会降低写数据的速度。5. 其他索引5.1 普通索引

和一般索引相比,允许列数据重复,作用是加快数据访问速度。特点如下:

一个数据表中可以有多个唯一索引;普通索引可以为空(null);普通索引的列数据能重复。5.2 全文索引

用来加快对大文本数据关键字的检索,MySQL5.6之后InnoDB也支持该索引。

5.3 前缀索引

仅针对字符串类型的数据,只索引字符串的前几个字符,而不是整个字符串。因此索引文件更小。

6. 总结

对上述的几种索引的特点对比如下所示:

7. 参考资料

参考博客-1参考博客-2

标签:

相关新闻

热点