美文网首页
mysql 解读sql执行情况(explain)

mysql 解读sql执行情况(explain)

作者: twinkle8858 | 来源:发表于2022-10-09 15:16 被阅读0次

explain 命令来看SQL的执行情况:


image.png

我们来解读下重要的字段

1)type :这个字段是我们优化要重点关注的字段,这个字段直接反映我们SQL的性能是否高效。性能由好到差依次为:system>const>eq_ref>ref>range>index>all。

2)possible_keys:显示可能应用在这张表中的索引,但不一定被查询实际使用。

3)key:实际使用的索引。

4)key_len:表示索引中使用的字节数,可通过该列计算查询中使用的索引的长度。一般来说,索引长度越长表示精度越高,效率偏低;长度越短,效率高,但精度就偏低。并不是真正使用索引的长度,是个预估值。

5)rows:大致找到所需记录需要读取的行数。

6)filter:表示选取的行和读取的行的百分比,100表示选取了100%,80表示读取了80%。

7)extra:一些重要的额外信息,用于查看排序分组很有用。

  • Using filesort:使用外部的索引排序,而不是按照表内的索引顺序进行读取。(一般需要优化)
  • Using temporary:使用了临时表保存中间结果。常见于排序order by和分组查询group by(最好优化)
  • Using index:表示select语句中使用了覆盖索引,直接冲索引中取值,而不需要回行(从磁盘中取数据)
  • Using where:使用了where过滤
  • Using index condition:5.6之后新增的,表示查询的列有非索引的列,先判断索引的条件,以减少磁盘的IO
  • Using join buffer:使用了连接缓存
  • impossible where:where子句的值总是false

相关文章

  • mysql 解读sql执行情况(explain)

    explain 命令来看SQL的执行情况: 我们来解读下重要的字段 1)type :这个字段是我们优化要重点关注的...

  • BTree索引使用技巧

    explain是解释计划,说明SQL的执行情况 explain select * from t_content w...

  • MYSQL执行计划字段详解

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

  • mysql explain 说明

    mysql explain 说明 总结学习一下mysql的explain 。innodb 列说明id就是每个sql...

  • Mysql优化之explain详解

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

  • Mysql - Explain

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

  • MySQL索引与性能调优

    1.explain 使用explain关键字分析SQL语句的效率与执行情况是基础; 例: 各列的含义如下: id:...

  • 查看Mysql执行计划

    1、MySQL语法 MySql提供了EXPLAIN语法用来进行查询分析,在SQL语句前加一个”EXPLAIN”即可...

  • MySQL性能优化笔记

    通过explain 查出执行情况,是否使用索引 查询sql语句耗时: set profiling = 1; /SQ...

  • MySQL执行计划

    概念:MySQL中的执行计划指通过explain语法分析SQL语句语法:explain SQL语句\G说明:通过e...

网友评论

      本文标题:mysql 解读sql执行情况(explain)

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