关于mysql的explain慢查询详解

expain出来的信息有10列,分别是id、select_type、table、type、possible_keys、key、key_len、ref、rows、Extra

概要描述:
id:选择标识符
select_type:表示查询的类型。
table:输出结果集的表
partitions:匹配的分区
type:表示表的连接类型
possible_keys:表示查询时,可能使用的索引
key:表示实际使用的索引
key_len:索引字段的长度
ref:列与索引的比较
rows:扫描出的行数(估算的行数)
filtered:按表条件过滤的行百分比
Extra:执行情况的描述和说明

需要关注的地方:type,possible_keys,key,rows,  key_len和Extra

type const | ref | range | index | all(从大)

  const :基本上使用等于的时候才会出现这个值

  ref :小范围结果的时候,就会这个值

  range :大范围结果的时候,就会这个值

  index :整个索引查询,遍历索引

  all :全表查询,使用索引了。

Extra

Using filesort  :文件排序,这个就很慢了。可以优化

Using temporary  :使用了临时表,这个就可以优化

Using index  :使用了索引覆盖

Using where  :使用了数据过滤

快,滋醒这个做梦的人,有糖尿病的往后靠靠哈,不要给他点甜头!
原文地址:https://www.cnblogs.com/jianzhaojing/p/13032804.html