分析sql语句 explain
explain (sql语句) G;
分析结果:
- id sql语句编号
如果是连接查询,表之间是平等关系,编号相同;如果有子查询,编号递增。 - select——type 查询类型
- table 查询针对的表
该值可能是实际的表名或者临时表,derived表示form子查询,null表示无须查表 - possible_key 可能用到的索引
- key 最终使用到的索引
- key_len 使用索引的最大长度
- type 查询方式
方式 | 含义 |
all | 全表扫描 |
index | 扫描全部索引节点 |
range | 范围内扫描索引 |
ref | 根据索引直接找到某些数据行 |
eq_ref | 根据索引直接找到某一个数据行 |
const | 很快 |
system | 很快 |
null | 不经过表查询 |
- rows 预估需要扫描多少行
- extra
值 | 含义 |
index | 用到了索引覆盖,效率极高 |
using where | 仅靠索引无法定位,使用了where |
using temporary | 用了临时表,group by 与order by不同列 |
using filesort | 文件排序,可能在内存中或磁盘中 |