更多知识,请移步我的小破站:http://hellofriend.top
1. 概述
使用EXPLAIN
关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈。
通过Explain
,我们可以获取以下信息:
- 表的读取顺序
- 哪些索引可以使用
- 数据读取操作的操作类型
- 哪些索引被实际使用
- 表之间的引用
- 每张表有多少行被物理查询
2. 怎样获取SQL语句的执行计划?
Explain + SQL语句
举例
EXPLAIN SELECT * FROM USER;
执行计划所包含的信息
3. 执行计划各个名词字段的解释
3.1 Id
select查询的序列号,包含一组数字,表示查询中执行select子句或操作表的顺序。
三种情况
(1) ID相同
id相同,执行顺序由上至下。
(2)ID不同
如果是子查询,id的序号会递增。id越大优先级越高,越先被执行。
(3)ID既有相同的也有不同的
id如果相同,可以认为是一组&#