Explain字段解释——Extra(重点)

本教程中所使用的数据库的建表语句都在“MySQL高阶教程索引”这篇文章中,点击链接直达:索引&建表语句

摘要:本文主要介绍Explain的最后一个常见字段——Extra

 

Explain字段解释——Extra

 

 

1、Using filesort

 

filesort产生原因:排序时没有用到索引列:

 

 

 

2、Using temporary

 

看例子:

 

这是因为,group by中只用到了联合索引中的后缀索引列。什么是前缀索引列,什么是后缀索引列呢?create index idx_col1_col2 on t1(col1, col2); 第一个col1就是前缀索引列,后边的col2是后缀索引列。

有啥区别呢?前缀索引列很吊,后缀索引列垃圾:

 

如果order by 和 group by都用前缀索引,那就皆大欢喜!

如果他们之中出现了一个后缀索引,就gg,除非把他们都用上:

 

当group by 与 order by连用时,group by里边必须两个都出现,否则gg,而order by可以只出现前缀索引。

当group by单独用时,可以只出现前缀索引。

gg:filesort、temporary都出现,不gg,都不出现。

 

3、Using index

 

4、Using where

查询的列未被索引覆盖,where筛选条件非索引的前导列。

 

5、Using join buffer

使用了连接缓存,join语句用到了缓冲区。

 

6、impossible where

where字句的值总是false,不能用来获取任何元组。比如:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

请保持优秀。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值