【MySQL数据库】普通索引和唯一索引的区别?

本文探讨了MySQL中普通索引和唯一索引的区别,尤其是在查询和更新操作上的性能差异。唯一索引禁止重复键值,查询时一旦找到即停止搜索,而普通索引可能会继续查找。在更新操作中,普通索引可以利用change buffer提高效率,而唯一索引因需保持数据唯一性,无法使用change buffer。对于写多读少的业务,change buffer能发挥更大作用。
摘要由CSDN通过智能技术生成

上一节,我们学习了关于索引的基本知识——>数据库必学——关于MySQL索引的基础知识都在这!介绍了索引的一些知识,这次我们继续学习数据库索引,今天主要探讨一下在MySQL中,使用普通索引和唯一索引有什么不一样的地方,帮助大家更深入学习到索引。

普通索引和唯一索引

唯一索引:一种索引,不允许具有索引值相同的行,从而禁止重复的索引或键值。系统在创建该索引时检查是否有重复的键值,并在每次使用 INSERT 或 UPDATE 语句添加数据时进行检查。如果已经存在了该值,就会拒接插入和删除。

那么现在我们来看看在不同的操作下它们带来的性能问题吧!

查询情况

在查询的情况下,还是一个学生表,ID为表的索引,如果我们要查询ID为2020001的同学情况是怎么样的呢?

在这里插入图片描述

  • 使用普通索引查到 2020001 这条数据后还会继续查看下一条记录是否符合条件,查询到不符合,则查询结束
  • 使用唯一索引当查到 2020001 这条数据后由于唯一索引的性质,不会有相同的ID,所以就不会继续查找下去了

看起来唯一索引会比普通索引快,那到底会快多少呢?
答: 微乎其微

是不

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值