对于MySQL中explain执行计划type连接类型的理解

MySQL中explain执行计划type连接类型一共有null,system,const,eq_ref,ref,range,index,all,从左到右,性能由高到低。

explain:通常表示查询中引用的某个表或列不存在,或者查询不涉及到表,或者查询语句本身有错误,导致MySQL无法生成执行计划。如语句 explain select 'A';

system:这表示MySQL能够直接从系统表获取数据,而不需要进行常规的表扫描。这种情况通常出现在非常特殊的查询中,如只涉及系统表的查询。

const:表示MySQL找到了一个常量值,该值在查询执行期间不会改变。这种类型的执行计划通常出现在使用了索引的等值查询中,且该值在索引中是唯一的。

eq_ref:表示使用了一个等于引用的查询。这种执行计划通常出现在使用了主键或唯一索引的等值查询中,且被引用的列在索引中是唯一的。

ref:表示使用了引用查询。这种执行计划通常出现在使用了非唯一索引或非主键索引的等值查询中。

range:表示MySQL使用了一个范围查找。这种执行计划通常出现在使用了范围查询(如BETWEEN...AND...或> < =等)的查询中。

index:表示MySQL对整张表进行了索引扫描。这种执行计划通常出现在没有使用覆盖索引的查询中,或者在某些情况下,当MySQL认为使用索引比直接扫描表更快时。

all:表示MySQL对整张表进行了全表扫描。这是最糟糕的情况,因为说明MySQL没有任何合适的索引可以使用。这种执行计划通常出现在没有使用任何索引的查询中。

 const通常是出现在使用了主键索引或者唯一索引的情况。

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值