MySql通过explain分析sql语句

本文详细解读了MySQL Explain的关键字段,包括type、key和rows,以及它们在不同查询场景下的表现。涵盖了系统查询、主键查询、索引查询等类型,并解释了各种类型的含义。

1.explain返回的关键字段

explain select city,name,age from t where city='深圳' order by name limit 1000;

会返回几个关键性的字段:

(1)type:表示MySql查询数据时的类型,主要有如下几种类型:system,constant,eq_ref,ref,range,index,all,性能从左到右依次变差;

(2)key:表示使用了哪个索引,如果没有使用则为null;

(3)rows:表示预估扫描的行数。

2.不同的type在什么情况下会出现?

system:系统表的查询时会出现,平时业务sql不会出现;

constant:主键的等值查询时会出现,比如:select * from t where id = 1;id就是主键;

eq_ref:在连表查询的时候,如果某个where条件就是主键索引或者唯一索引的时候会出现;

ref:在普通索引的等值查询时会出现;

rang:在between、>、<等范围查找时会出现;

index:全索引扫描;

all:全表扫描。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值