【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语句查看与这个查询的执行计划有关的一些扩展信息。也就是显示了相当于优化器优化以后的执行计划信息。

相关推荐
PC2005-cloud7 小时前
MySQL学习笔记:主从复制集群搭建以及原理详解
笔记·学习·mysql
夜雪一千7 小时前
MySQL中修改JSON类型的数据实战
数据库·mysql·json
正在走向自律8 小时前
数据集成软件怎么选、怎么用:从 KFS 的建表、增删改查到一致性校验全流程
oracle·kingbasees·断点续传·全量+增量同步·多通道并行·事务一致性
for_ever_love__8 小时前
MySQL 优化器与 OPTIMIZER_TRACE:把‘为什么选这条计划‘问到水落石出
数据库·mysql·优化器·trace·optimizer·执行计划分析·cic
j7~8 小时前
【仿 RabbitMQ 项目】发布订阅消息队列 (篇九):队列数据管理,内存镜像 + SQLite 持久化实现
数据库·c++·分布式·sqlite·rabbitmq·队列数据管理
云贝贝贝8 小时前
Oracle 认证实战指南
数据库·oracle
靠沿8 小时前
MySQL数据库基础——事务
java·数据库·mysql
夜雪一千8 小时前
MySQL 中查询和操作JSON类型的数据
数据库·mysql·json
达梦数据9 小时前
达梦数据复制软件DMDRS搭建部署示例:源数据库DMDPC到目标数据库DM8一对一数据同步
数据库·oracle
AlfredZhao9 小时前
SQLcl 用文件夹直观管理数据库连接
oracle