覆盖索引的理解与举例

博客介绍了覆盖索引,即某个索引能“覆盖”查询需求。使用覆盖索引可减少树的搜索次数,显著提升查询性能,是常用的性能优化手段。还通过具体例子说明建立联合索引能避免回表查询,提高效率,若增加字段可能又需回表查询。

覆盖索引是指:

在某个查询里面,某个索引已经“覆盖了”我们的查询需求,称为覆盖索引。
覆盖索引可以减少树的搜索次数,显著提升查询性能,所以使用覆盖索引是一个常用的性能优化手段。
比如

select id,name,password form user where name=1

此时根据name会找到 主键id 此时只能返回id和name而不能返回password,这时就会回表查询找到对应的行消耗了性能,如果我们建立一个联合索引name,password 那么在找到name的同时也会找到passwode同时非聚簇索引叶子结点会存储主键id值这是就能直接返回这三个字段而不用进行回表查询,这样就提高了效率 ,但是如果我们再加入一个字段grade就会又需要回表查询了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值