如何查看MySQL 的执行计划?

office365打不开 📅 2025-09-26 11:20:24 👤 admin 👁️ 1332 👑 785
如何查看MySQL 的执行计划?

MySQL 的执行计划(Execution Plan)是 SQL 性能调优的核心工具。它展示了 MySQL 优化器为执行一条 SQL 语句所选择的详细步骤和策略。读懂执行计划,就能定位查询瓶颈,从而进行有效优化。

一、如何获取执行计划?

使用 EXPLAIN 关键字,只需将其加在你的 SQL 语句之前即可。

-- 查看 SELECT 语句的执行计划

EXPLAIN SELECT * FROM employees WHERE last_name = 'Smith';

-- 查看 INSERT/UPDATE/DELETE 语句的执行计划(了解其如何查询数据)

EXPLAIN UPDATE employees SET salary = salary * 1.1 WHERE department_id = 5;

-- MySQL 8.0+ 支持更详细的 ANALYZE 命令,会实际执行语句并统计耗时

EXPLAIN ANALYZE SELECT * FROM employees WHERE last_name = 'Smith';

二、执行计划详解:各字段含义

EXPLAIN 命令的输出包含以下核心字段。理解它们是读懂执行计划的关键。

字段

含义

说明

id

查询序号

标识 SELECT 子句的执行顺序。相同 id 从上到下执行;不同 id,id 值越大优先级越高。

select_type

查询类型

表示查询的复杂度(如简单查询、子查询、联合查询等)。

table

访问的表

显示这一步访问的是哪个表,有时是衍生表(如 )。

partitions

匹配的分区

如果表定义了分区,这里显示命中了哪些分区。

type

访问类型

极其重要!表示如何查找数据,从好到坏:system > const > eq_re

皇家推荐

opporeno10多少钱
iPhone改GPS定位
Edge浏览器无法下载文件怎么办?两种方法帮你解决!
《剑灵》赚钱渠道与赚钱物品介绍
關於砂輪你瞭解多少?
开网店都是在哪里进货?如何进货?