当前位置:首页 > CarlZhou 第8页
CarlZhou

CarlZhou 管理员

暂无介绍

185 篇文章 0 次评论

97 MySQL是如何基于各种规则去优化执行计划的?(上)

CarlZhou3年前 (2021-05-11)856
之前我们已经给大家讲解了单表查询语句和多表关联语句具体的执行原理,同时也给大家讲了在生成具体执行计划的时候,是如何根据成本计算去选择最优执行计划的,因为每个查询执行的时候实际都可能有多种执行计划可供选择,必须要选择成本最低的那种。 接着我们...

96 MySQL是如何根据成本优化选择执行计划的?(下)

CarlZhou3年前 (2021-05-09)815
今天是我们讲解根据成本优化选择执行计划的最后一讲,下周就要给大家讲解基于规则的执行计划优化了,也就是MySQL是如何自动调整我们的SQL语句为性能比较优化的方式,好,那今天一起看看多表关联查询是如何选择执行计划的。 其实多表查询的执行计划选...

95 MySQL是如何根据成本优化选择执行计划的?(中)

CarlZhou3年前 (2021-05-09)824
上次我们讲完了全表扫描的成本计算方法,相信大家应该都理解了,其实还是比较简单的,今天我们来讲一下索引的成本计算方法,因为除了全表扫描之外,还可能多个索引都可以使用,但是当然同时一般只能用一个索引,所以不同索引的使用成本都得计算一下。 这个使...

94 MySQL是如何根据成本优化选择执行计划的?(上)

CarlZhou3年前 (2021-05-09)1195
之前已经给大家讲解清楚了 MySQL 在执行单表查询时候的一些执行计划,比如说const、ref、range、index、all之类的,也讲了多表关联的时候是如何执行的,本质其实就是先查一个驱动表,接着根据连接条件去被驱动表里循环查询,现在...

93 深入探索多表关联的SQL语句到底是如何执行的?(3)

CarlZhou3年前 (2021-05-09)954
93 深入探索多表关联的SQL语句到底是如何执行的?(3)
之前我们把连接的基本语义和基本原理讲了一下,今天开始正式来深入探索一下SQL关联语法的实现原理 首先,先给大家提出一个名词叫做:嵌套循环关联(nested-loop join),这其实就是我们之前给大家提到的最基础的关联执行原理。 简单来说...

92 深入探索多表关联的SQL语句到底是如何执行的?(2)

CarlZhou3年前 (2021-05-09)3864
今天我们来继续跟大家聊聊多表关联语句是如何执行的这个问题,上次讲了一个最最基础的两个表关联的语句和执行过程,其实今天我们稍微来复习一下,然后接着上次的内容,引入一个“内连接”的概念来。 假设我们有一个员工表,还有一个产品销售业绩表,员工表里...

91 深入探索多表关联的SQL语句到底是如何执行的?(1)

CarlZhou3年前 (2021-05-09)10320
之前我们已经用很大的篇幅讲完了针对单表的查询SQL语句,通常都会使用哪些执行计划,如何去使用索引去查找数据,想必大家都已经透彻的掌握这些知识了,比如以后在执行计划里看到const、ref、range、index、all以及多索引查询合并的一...

90 再次重温写出各种SQL语句的时候,会用什么执行计划?(3)

CarlZhou3年前 (2021-05-09)10743
今天我们继续看看写出各种SQL语句的时候,会有什么样的执行计划?其实这些都是MySQL优化的一些基础知识。 如果大家不能把这些理论知识夯的很扎实的话,那么后续的多个MySQL SQL调优实战案例根本不可能会看懂,因为调优的前提,就是彻底搞明...

89 再次重温写出各种SQL语句的时候,会用什么执行计划?(2)

CarlZhou3年前 (2021-05-09)10468
今天我们来看一个比较奇特的SQL语句以及特殊的执行计划,之前我们都是说,一般一个SQL语句只能用到一个二级索引,但是有一些特殊的情况下,可能会对一个SQL语句用到多个二级索引,这是怎么回事呢? 比如有这么一个SQL:select * fro...

88 再次重温写出各种SQL语句的时候,会用什么执行计划?(1)

CarlZhou3年前 (2021-05-09)9811
今天开始,我们将用连续三篇文章给大家去重温平时我们写的SQL语句在执行的时候会用什么样的执行计划,因为我们讲完了SQL语句使用索引的规则和规律,也讲过了不同的使用索引的方法对应着执行计划里的什么访问方式,接下来就可以重温一下,直接把我们平时...