EXPLAIN
查看查询执行计划
语法
EXPLAIN [FORMAT=JSON] SELECT ...说明
EXPLAIN 用于分析 SQL 语句的执行计划,显示查询优化器选择的表访问顺序、使用的索引、扫描行数等关键信息,是性能调优的必备工具。
参数
FORMAT=JSON以 JSON 格式输出更详细的执行信息
FORMAT=TREE以树形结构显示执行路径
ANALYZE实际执行查询并给出耗时统计(EXPLAIN ANALYZE)
示例
查看执行计划
分析 SQL 是否使用索引
EXPLAIN SELECT * FROM users WHERE email = 'user@example.com';JSON 详细输出
获取更详细的执行计划信息
EXPLAIN FORMAT=JSON SELECT * FROM orders WHERE user_id = 1;实际执行分析
执行查询并输出实际耗时(MySQL 8.0.18+)
EXPLAIN ANALYZE SELECT u.name, COUNT(*) FROM users u JOIN orders o ON u.id = o.user_id GROUP BY u.id;