explain 之热身 case |学习笔记

简介: 快速学习 explain 之热身 case

开发者学堂课程【MySQL 高级应用 - 索引和锁explain 之热身 case】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/598/detail/8607


explain 之热身 case


一.释义

为了后续的索引优化和调优查错,先得打牢 explain 的基础。

mysq1> explain select d1.nane,( select id fron t3)d2

-> from ( select id , nane fron t1 uhere other _ colunn *')d1

-> union

->( select nane , id fron t2);

Iid Iselect _ type Itable I type Ipossible _ keys Ikey Ikey _ len Iref Irows IExtra

IPRIMARY  Isysten IHULL HULL IHULL I HULL I

I DERIUED ALL I HULL HULL I HULL I HULLI Using vhere

I sUBQUERY t3 I index I HULL PRIMARY I4 I HULL I 1 IUsing indexI

I UHION I ALL HULL HULL IHULL IHULLI

I HULL IUNION RESULT I nion1,4> IALL HULL HULL I HULL IHULL INULL

5 rows in set (0.01 sec )

image.png

第一行(执行顺序4):

id 列为1,表示是 union 里的第一个 select , select type 列的 primary 表示该查询为外层查询, table 列被标记为,表示查询结果来自一个衍生表,其中derived33代表该查询衍生自第三个 select 查询, id 3 select

select d1.name.…….

第二行(执行顺序2):

id 3,是整个查询中第三个select 的一部分。因查询包含在 from ,所以为 derived .

select id , name from t1 where other _ column ="

第三行(执行顺序3):

select 列表中的子查询 select_type subquery ,为整个查询中的第二个 select

select id from t3

第四行(执行顺序1):

select _ type union ,说明第四个 select union 里的第二个 select ,最先执行 select name , id from t2

第五行(执行顺序5):

代表从 union 的临时表中读取行的阶段, table 列的表示用第一个和第四个 select 的结果进行 union 操作。【两个结果 union 操作】

相关文章
|
Python Windows
xlrd库报错【AttributeError: ‘ElementTree‘ object has no attribute ‘getiterator‘】
xlrd库报错【AttributeError: ‘ElementTree‘ object has no attribute ‘getiterator‘】
476 0
|
XML Java Maven
【深入浅出Maven开发实战】「入门教程系列」带你零基础学习和开发使用Maven开发工具实战指南(实战技术总结)(二)
【深入浅出Maven开发实战】「入门教程系列」带你零基础学习和开发使用Maven开发工具实战指南(实战技术总结)
232 0
|
11月前
|
存储 SpringCloudAlibaba Java
【SpringCloud Alibaba系列】一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论
一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论。
【SpringCloud Alibaba系列】一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论
|
JavaScript
JS趣味打字金鱼小游戏特效源码
hi fish是一款打字趣味小游戏,捞出海里的鱼,捞的越多越好。这款游戏用于电脑初学者练习打字。初学者可以根据自己的水平设置游戏难度。本段代码可以在各个网页使用,有需要的朋友可以直接下载使用,本段代码兼容目前最新的各类主流浏览器,是一款非常优秀的特效源码!
174 0
JS趣味打字金鱼小游戏特效源码
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】python之人工智能应用篇--数字人生成技术
数字人生成技术是基于人工智能技术和计算机图形学技术创建的虚拟人物形象的技术。该技术能够模拟人类的外貌、声音、动作和交流能力,为多个领域带来创新的应用可能性。数字人的本质是将所有信息(数字和文字)通过数字处理(如计算机视觉、语音识别等)再进行表达的过程,形成具有人类形态和行为的数字产物。 数字人的生成涉及到多种技术,如3D重建技术,使用三维扫描仪扫描人的外观、五官等,并通过3D模型重建三维人;虚拟直播技术,使用计算机技术生成人物或实体,并且可以实时直播、录制;数字人体数据集技术,利用数据构建数字人模型以及训练虚拟现实引擎等
576 4
|
人工智能 机器人
RPA是什么?为啥要学习RPA,看这篇就够了
RPA是什么?为啥要学习RPA,看这篇就够了
3987 2
|
XML 数据格式
Flume【付诸实践 01】flume1.9.0版 配置格式说明+常用案例分享(ExecSource+SpoolingDirectorySource+HDFSSink+AvroSourceSink)
【2月更文挑战第19天】Flume【付诸实践 01】flume1.9.0版 配置格式说明+常用案例分享(ExecSource+SpoolingDirectorySource+HDFSSink+AvroSourceSink)
330 1
|
JavaScript Java 测试技术
基于Java的志愿者管理系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的志愿者管理系统的设计与实现(源码+lw+部署文档+讲解等)
229 0
|
Oracle 关系型数据库 Java
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
5516 0