美文网首页
mysql执行计划

mysql执行计划

作者: sunpy | 来源:发表于2022-08-12 07:16 被阅读0次

示例


mysql> explain select id, username from edu_user order by id limit 2;
+----+-------------+----------+------------+-------+---------------+---------+---------+------+------+----------+-------+
| id | select_type | table    | partitions | type  | possible_keys | key     | key_len | ref  | rows | filtered | Extra |
+----+-------------+----------+------------+-------+---------------+---------+---------+------+------+----------+-------+
|  1 | SIMPLE      | edu_user | NULL       | index | NULL          | PRIMARY | 98      | NULL |    2 |   100.00 | NULL  |
+----+-------------+----------+------------+-------+---------------+---------+---------+------+------+----------+-------+
1 row in set (0.05 sec)

字段说明


  • select_type 字段:查询的类型
    示例:

SIMPLE:简单查询,不使用子查询、union。
PRIMARY:嵌套查询中的外层查询。
DERIVED:在 from 子句中的子查询。mysql会将子查询结果放在临时表。
UNION:union中第二个或者后面的查询语句。

  • table 字段:explain访问的哪一张表
  • type 字段:mysql查找表中行的范围
性能排序:
system > const > eq_ref > ref > range > index > all

all字段:全表扫描。
index字段:索引全扫描,遍历索引查询匹配的行。
range字段:索引范围扫描,常见于between、<、<=、>、>=。
ref字段:也是索引,但不是主键和unqiue,可能存在重复的情况。
eq_ref字段:与ref字段相比,必须得是唯一的。
const/system字段:根据主键或者唯一索引 unique index 查询结果。

  • possible_keys 字段:mysql查找时候可能使用的索引。
  • key 字段:mysql查找时候实际使用的索引。
  • key_len 字段:mysql的索引使用的字节数。
  • ref 字段:表查询用到的列。
  • rows 字段:扫描的行数。
  • Extra 字段:额外信息。
mysql> explain select username from edu_user order by create_time limit 2;
+----+-------------+----------+------------+------+---------------+------+---------+------+------+----------+----------------+
| id | select_type | table    | partitions | type | possible_keys | key  | key_len | ref  | rows | filtered | Extra          |
+----+-------------+----------+------------+------+---------------+------+---------+------+------+----------+----------------+
|  1 | SIMPLE      | edu_user | NULL       | ALL  | NULL          | NULL | NULL    | NULL |    7 |   100.00 | Using filesort |
+----+-------------+----------+------------+------+---------------+------+---------+------+------+----------+----------------+
1 row in set (0.07 sec)

相关文章

  • MySQL源码解析之执行计划

    MySQL源码解析之执行计划 MySQL执行计划介绍 MySQL执行计划代码概览 MySQL执行计划总结 一、My...

  • Mysql优化之explain详解

    关键词: mysql explain sql优化 执行计划 简述:explain为mysql提供语句的执行计划信息...

  • MYSQL执行计划字段详解

    Mysql查看执行计划 explain + sql :输出执行计划。explain extended + sql ...

  • MySQL的执行计划

    MySQL的执行计划 什么是执行计划? 执行计划通常是开发者优化SQL语句的第一步。MySQL在解析SQL语句时,...

  • 索引

    一文说尽 MySQL 优化原理MySQL 索引管理与执行计划

  • MySQL进阶之路--EXPLAIN执行计划详解

    执行计划简介 执行计划是指一条SQL语句在经过MySQL查询优化器的优化会后,具体的执行方式。MySQL为我们提供...

  • MySQL执行计划

    MySQL执行计划[https://www.jianshu.com/p/c68cd839cf26] 执行计划,简单...

  • Mysql执行计划功能详解

    Mysql执行计划使用详解 在Mysql调优过程中其中最关键的一点,就是正确使用执行计划,从而查看SQL语句的具体...

  • Mysql - Explain

    Mysql - Explain explain + 查询sql可以生成一个执行计划,可以通过执行计划来进行sql优...

  • EXPLAIN 命令详解

    # MySQL Explain详解 __简介__ 执行计划(`query Execution plan`) __语...

网友评论

      本文标题:mysql执行计划

      本文链接:https://www.haomeiwen.com/subject/atutgrtx.html