关于MySQL中explain工具的使用

 更新时间:2023年05月06日 10:21:29   作者:ThinkStu  
这篇文章主要介绍了关于MySQL中explain工具的使用,在select语句之前增加explain关键字,MySQL会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行这条SQL,需要的朋友可以参考下

EXPLAIN 是 MySQL 提供的一种工具,用于分析查询语句的执行计划,即查询优化器是如何决定执行查询语句的。EXPLAIN可以帮助我们分析查询语句的性能瓶颈,找出问题所在,进而优化查询语句和数据库结构。

使用EXPLAIN非常简单,只需要在查询语句前面加上EXPLAIN关键字即可,如下所示:

explain select * from articles where url='csdn.com'

输出结果如下:(图片太长,这里切分成 2 张,实际上是一张)

输出结果详解:

  1. id:既是查询的标识符,表示查询中每个操作的唯一标识;也是执行查询的顺序,越大优先级越高。
  2. select_type:查询类型,表示查询的类型,如简单查询、联合查询、子查询等等。
  3. table:查询涉及的表名。
  4. partitions:查询涉及的分区名。
  5. type:访问类型,表示MySQL在表中查找所需行的方式,常用的有ALL、index、range、ref、eq_ref、const等等。
  6. possible_keys:可能使用的索引,表示查询语句中可能会使用到的索引。
  7. key:实际使用的索引,可以查看本次查询是否用到了索引。
  8. key_len:索引使用的字节数。
  9. ref:列与索引的比较条件。
  10. rows:扫描的行数,表示MySQL执行查询语句时需要扫描的行数,这个值越小越好。
  11. filtered:返回结果集的行数占扫描行数的百分比,值范围在0~100之间。
  12. Extra:包含MySQL在执行查询时的一些额外信息,如使用临时表、排序方式等等。

通过分析EXPLAIN的输出结果,我们可以确定查询语句的执行计划、执行效率和可能存在的问题,从而进行优化。

到此这篇关于关于MySQL中explain工具的使用的文章就介绍到这了,更多相关MySQLexplain工具内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql获取当前日期年月的两种实现方式

    mysql获取当前日期年月的两种实现方式

    这篇文章主要介绍了mysql获取当前日期年月的两种实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • MySQL索引背后的之使用策略及优化(高性能索引策略)

    MySQL索引背后的之使用策略及优化(高性能索引策略)

    MySQL的优化主要分为结构优化(Scheme optimization)和查询优化(Query optimization)。本章讨论的高性能索引策略主要属于结构优化范畴
    2012-01-01
  • 详解mysql基本操作详细(二)

    详解mysql基本操作详细(二)

    这篇文章主要介绍了mysql基本操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • MySQL视图中如何使用IF和CASE语句

    MySQL视图中如何使用IF和CASE语句

    这篇文章主要介绍了MySQL视图中如何使用IF和CASE语句问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • mysql installer web community 5.7.21.0.msi安装图文教程

    mysql installer web community 5.7.21.0.msi安装图文教程

    这篇文章主要为大家详细介绍了mysql installer web community 5.7.21.0.msi,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • MySQL错误代码3140:无效的JSON文本编码问题解决办法

    MySQL错误代码3140:无效的JSON文本编码问题解决办法

    下面这篇文章主要给大家介绍了关于MySQL错误代码3140:无效的JSON文本编码问题的解决办法,文中通过代码介绍的非常详细,对大家学习或者使用mysql具有一定的参考借鉴价值,需要的朋友可以参考下
    2024-03-03
  • SQL IDENTITY_INSERT作用案例详解

    SQL IDENTITY_INSERT作用案例详解

    这篇文章主要介绍了SQL IDENTITY_INSERT作用案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • MySQL按时间拆分千万级大表的实现代码

    MySQL按时间拆分千万级大表的实现代码

    这篇文章主要介绍了MySQL按时间拆分千万级大表,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • Mysql日期格式以及内置日期函数用法详解

    Mysql日期格式以及内置日期函数用法详解

    MySQL中有多种数据类型可以用于日期和时间的表示,这篇文章主要给大家介绍了关于Mysql日期格式以及内置日期函数用法的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • mysql sql语句隐藏手机号码中间四位的方法

    mysql sql语句隐藏手机号码中间四位的方法

    这篇文章主要为大家详细介绍了mysql sql语句隐藏手机号码中间四位的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02

最新评论