
选择MySQL中的唯一索引还是普通索引?
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
本文探讨在MySQL数据库设计中使用唯一索引与普通索引的选择标准和应用场景,帮助开发者优化查询性能。
在设计用户表时,假设每个人的身份证号码是唯一的,并且需要进行搜索操作。然而由于身份证号码字段较长,不适合作为主键使用。既然业务代码已经确保了插入的唯一性,可以考虑建立唯一索引或普通索引。
查询过程如下:
假设 k 是表 t 上的一个索引,在执行 select id from t where k=5 的查询时,系统会从 B+ 树根节点开始搜索,并逐步向下寻找叶子节点。当找到满足条件 k=5 的数据页后,会在该数据页中通过二分查找定位具体的记录。
对于普通索引而言,一旦找到符合条件的记录(即k=5),数据库将继续扫描相邻的数据直到遇到第一个不匹配 k 值为止。
而对于唯一索引来说,由于每个值都是唯一的,在确认了满足条件的特定记录后就停止搜索。
全部评论 (0)
还没有任何评论哟~


