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

相关推荐
翔云12345612 小时前
RocksDB中,客户端每写入一次数据,需要访问几次磁盘
运维·数据库·mysql
在多学一点15 小时前
MYSQL第二次作业
android·数据库·mysql
yeccheng15 小时前
MySQL 索引超详解:从底层 B+ 树到面试高频考点
java·开发语言·jvm·mysql·面试
Risehuxyc15 小时前
Microsoft.Data.Sqlite体验
数据库·sqlite
骑着蜗牛撵大象32715 小时前
MySQL 8.0 迁移后 SQL 变慢:执行计划里 3 类被忽略的成本差异
android·数据库·sql·mysql·优化器·执行计划
大维19 小时前
DBX 实测:从 SQLite 查询到 MiniMax-M3 自然语言生成 SQL
数据库·sql·sqlite
.痞老板.1 天前
mysql初阶--数据类型
android·数据库·mysql
deepseek231 天前
Agent任务中途断线,怎么避免重复执行?SQLite检查点实测
python·sqlite·任务调度·幂等性·ai agent
Risehuxyc1 天前
MySQL密码插件
数据库·mysql
腾科IT教育1 天前
Oracle考试全解析:OCP、OCM认证体系与核心考点备考指南
数据库·oracle·开闭原则