MySQL之explain 的type列 & Extra列

explain工具用于分析MySQL SELECT语句的执行计划,揭示查询如何使用索引和进行数据处理。Extra列中,'Using index'表明完全依赖索引完成查询,高效;'Using where'表示条件过滤,可能涉及数据表读取;'Using filesort'表示数据排序策略,'Using temporary'则提示使用了临时表。避免大rows数和这两个信息出现能优化查询性能。
摘要由CSDN通过智能技术生成

explain 可以分析 select 语句的执行,即 MySQL 的“执行计划。

一、type 列

MySQL 在表里找到所需行的方式。包括(由左至右,由最差到最好):
| All | index | range | ref | eq_ref | const,system | null |

ALL(所有)
全表扫描,MySQL 从头到尾扫描整张表查找行。
mysql> explain select * from a\G
...
         type: ALL
如果加上 limit 如 select * from a limit 100 MySQL 会扫描 100 行,但扫描方式不会变,还是从头到尾扫描。

index(索引)
根据索引来读取数据,如果索引已包含了查询数据,只需扫描索引树,否则执行全表扫描和All类似;  
create table a(a_id int not null, key(a_id));
insert into a value(1),(2);
mysql> explain select a_id from a\G
...
         type: index

range(范围)
以范围的形式扫描索引
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值