美文网首页
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执行计划

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