【MySQL进阶之路 | 高级篇】EXPLAIN的进一步使用

1. EXPLAIN的四种输出格式

EXPLAIN可以输出四种格式:传统格式,JSON格式,TREE格式以及可视化输出。用户可以根据需要选择使用于自己的格式。

1). 传统格式

传统格式简单明了,输出是一个表格形式。

2). JSON格式

第一种格式中介绍的EXPLAIN语句输出中缺少了一个衡量计划好坏的重要属性--成本。而JSON格式是四种格式里输出信息最详细的格式。里面包含了执行的成本信息。在EXPLAIN单词和真正的查询语句中间加上FORMAT=JSON。

3). TREE格式

TREE格式是8.0.16版本之后引入的新格式,主要根据查询的各个部分之间的关系和各部分的执行顺序来描述如何查询。在EXPLAIN单词和真正的查询语句中间加上FORMAT=TREE。

4). 可视化输出

可以通过MySQL workbench可视化查看MySQL的执行计划。通过点击workbench的放大镜图标,即可生成可视化的查询计划。

2. SHOW WARNINGS的使用

在我们使用explain语句查看了某个查询的执行计划后,紧接着可以使用show warnings语句查看与这个查询的执行计划有关的一些扩展信息。也就是显示了相当于优化器优化以后的执行计划信息。

相关推荐
这个DBA有点耶9 小时前
连接池与MySQL交互实战:连接风暴、连接泄漏与连接状态异常排查
数据库·mysql·架构
需要82610 小时前
MySQL MVCC 与事务隔离级别:从一条 update 看版本链
java·数据库·spring boot·mysql·spring cloud
夜雪一千10 小时前
MySQL 默认值使用方法
数据库·mysql
bksczm10 小时前
MySQL进阶篇之范式及E-R图
数据库·sql·mysql
jingli910 小时前
一个测试用例把连接池卡死 30 秒:SQLite 连接池 max_size=1 下的重入自锁复盘
jvm·sqlite·测试用例
此时不提桶,更待何时10 小时前
05-04-B-HBase与时序库面试与生产事故实战
数据库·面试·hbase
Shadow(⊙o⊙)11 小时前
表的增删查改
数据库·mysql
千里码aicood11 小时前
基于Hadoop的机票价格波动分析系统的设计与实现
大数据·hadoop·分布式
FYKJ_201012 小时前
springboot刑事案件管理系统03047-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django
FYKJ_201013 小时前
springboot助农产品销售商城05829-计算机课程设计、毕业设计
java·spring boot·python·mysql·spark·django