sql执行计划需要关注那些内容?

执行explain会返回那些字段(加粗标红为主要关注字段)?

1、id:执行计划中每个操作的唯一标识,多表联查的时候会出现多条数据id是一样的

2、select_type:查询类型,常见类型有:SIMPLE、PRIMARY、UNION、SUBQUERY

3、table:涉及到的表

4、partitions:涉及到的分区

5、type:查询时使用到的索引类型:system、const、eq_ref、ref、range、index、ALL

6、possible_keys:可能被查询优化器使用到的索引

7、key:查询优化器选择的索引

8、key_len:索引长度

9、ref:索引的那一列被使用

10、rows:需要扫描的行数,就是此次查询需要扫描多少行得到结果

11、filtered:按表条件过滤的行百分比

12、Extra :额外信息

三个关键字段解析:

type索引类型解析:

1、system:系统表

2、const:常数索引

3、eq_ref:唯一索引,只扫描索引树种的一个一个匹配行

4、ref:非唯一索引,只扫描索引树种一部分数据来查找匹配行

5、range:范围索引,只扫描索引树种的一个范围来查找匹配的行

6、index:全索引扫描,遍历索引树

7、ALL:全表扫描

按照序号排列,效率由快到慢

key:

实际使用到的索引,正常使用到了索引,则显示索引名称

Extra:

Using where:

表示使用了where过滤,过滤条件字段无索引。

Using index:

使用了覆盖索引,只需要扫描索引,无需回表检索

Using where;Using index

查询的列被索引覆盖,where筛选条件是索引列之一

Using temporary:

创建了临时表用来存储结果,排序或者分组的情况下

Using filesort:

表示没有使用索引的排序

相关推荐
这个DBA有点耶5 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G5 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备5 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远5 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
漂着的圆木5 天前
Agent 功能参与度:Copilot 怎么算
sql·数据分析·agent·githubcopilot·度量
2601_962218615 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法
张洛闻Eren5 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
于平安5 天前
MySQL-触发器
数据库·mysql
白远山5 天前
上海24小时自助健身房解决方案实战指南与经验分享
java·数据库·架构·需求分析
Omics Pro5 天前
斯坦福Nature+Science|广义虚拟细胞基础大模型
数据库·人工智能·算法·机器学习·自然语言处理