Explain中的字段

这里写图片描述

1.id:操作表的顺序

根据id的值出现的情况不同,操作表的顺序或者执行select字句的顺序也会有所不同

id值出现的情况执行的顺序
id值相同的时候由上之下执行
id值不同的时候id值越大越是先执行
id值有相同也有不同的时候id值越大的先执行,id值相同的由上之下执行

2.select_type:查询的类型

出现的选项可能有

次序select_type的值说明
1SIMPLE简单查询(不包括子查询或者UNION)
2PRIMARY主查询(查询中包含了复杂查询,在外层的查询就会标记为主查询)
3SUBQUERY子查询(select或者where列表中包含了子查询)
4DERIVE有临时表产生
5UNION如果第二个select出现在union之后,则标记为UNIION;如果union包含在from子句的子查询当中,最外层标记为DERIVE
6UNION RESULT从UNION表中获取的结果的SELECT子句

3.table:显示当前的一行数据是关于哪一个表的


4.partitions


5.type:扫描表的类型
性能效果排序如下,ALL表示这全表扫描
system>const>eq_ref_ref>range>index>ALL

次序type的值说明
1system当表只有一行记录时,这是const的特例(没有实际意义)
2const表示通过索引一次就找到了(单表单行,也没有实际意义)
3eq_ref唯一性全表扫描,对于每个索引键,表中都是一条记录与之匹配。常见于主键或者唯一索引扫描
4ref非唯一性索引扫描,他可能会找到多个符合条件的行
5range只检索给定范围的行,使用一个索引来选择行。
6index遍历索引树
7ALL遍历全表

6.possible_keys:显示可能会被应用的索引


7.key:实际上使用到的索引

  1. 如果没有则为null
  2. 如果使用了覆盖索引,则显示覆盖索引

7.key_len:索引使用的字节数


8.ref:索引的引用


9.rows:需要读取的行数

根据表的统计信息和索引的使用来大致估算出找到记录所需要读取的行数。


10.filtered


11.Extra:额外信息

次序type的值说明
1Using filesort文件内排序(Mysql会对数据使用一个外部的索引进行了排序,而不是按照表内的索引顺序进行读取)
2Using temporay产生了临时表(使用了临时表保存临时的数据,常见于order by 和 group by
3Using index使用了覆盖索引
4Using where使用了where进行了过滤
5using join buffer使用了连接缓存
6impossible wherewhere子句的值总是false,不能用来获取任何的元组
7。。。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值