mysql 执行计划

Posted by eliooyang on 2023-05-26
Words 344 and Reading Time 1 Minutes
Viewed Times

执行语句语法

EXPLAIN/DESC SQL语句

1
explain

执行计划参数详解

1.执行计划参数

select_type查询类型 - SIMPLE:简单查询 - PRIMARY:复杂查询中最外层的 select - SUBQUERY:包含在 select 中的子查询(不在 from 子句中) - DERIVED:包含在 from 子句中的子查询(会将结果存放在一个临时表中,也称为派生表) - UNION:第二个select中查询UNION,则被标记为UNION,如果UNION出现在from子查询中,最外层被标记为DERIVED - UNION RESULT:从UNION表获取结果的select type-访问类型

type代表访问类型,是判断sql执行性能比较关键的一个字段,性能从高到低依次是:

system > const > eq_ref > ref > fulltext > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL

  • system:表示只有一条数据,类似于系统表,是const的一种特例
  • const:表示通过索引一次就查询到数据,比较块,用于primary key(主键)和unique唯一索引
  • eq_ref:用于“=”运算符比较的索引列
  • ref:非唯一索引扫描
  • rang:检索给的范围的值,使用一个索引进行选择,where后面使用between、>、<、in等
  • index:当前查询的结果全部为索引列,虽然也是全部扫描,但是只查询索引数据,没有之间查询数据
  • all:遍历全部查询

This is copyright.

...

...

00:00
00:00