00:00
那么诚如刚才同学们所回答我的,如果一张表是四条记录,第二张表呢是五条记录,这个时候我写赛克星芙蓉AB2张表,那么这个时候做一个D抗基是不是调速互相相乘四五总共20条记录啊。好,那么除此以外,我们再来看看我们常见的就引查询,前面也说过导致SQ慢的时候关联查询就隐是不是有关系啊?那么我们来好好的复习或者说学习一下这个join应的全部相关内容分别是些什么?首先第一点来看看SQL的执行顺序,好人写的,主人写的和MYSQL读的,我们来看看它的理解和加载顺序分别有什么不同之处,大家请看手写的话。我们可以看到标准的话,我们是不是人最关心select,我想找到我关心的字段的表格,或者说字段的值,首先select,你把它当做查询条件,这是不是from啊,那么呢,左还是右还是内,各种就引。
01:18
二然后条件。这个on是什么?是不是join condition啊?就是我们两个能够join用起来条件A和B,比如说a left join b on是不是一定是,比如说员工的部门ID和部门表的主键ID是不是相同啊?好,我们两个的on是吧?为什么我们俩能连一块,那是不是要有个就condition啊?好,勾搭到一块了以后各位亲,是不是取我们的公有部分啊,然后公有部分你再过滤while group by having order by limit,那么言下之意,任何一条这个也就是什么人写的话是不是?
02:02
就是这么一个逐步向下的这么一个顺序啊,Select,新from各种joining和joining的条件,While后面跟着什么?1DOING是不是参数条件啊,Group by having order by limit,好,这是人写的,但是注意my circleql或者是Oracle,包括数据库,传统关系数据库,它可不是这么理解的。那么这个时候大家请看一下,主人你发过来这条circleq以后还记不记得我跟你们早上我们学过那个逻辑架构图,中间是不是有SQL interface接口,和那个转换那个漏斗一样,哎,知道那个业务服务层他要干嘛?主人你现在是不是按照新select开头发了给我一条SQ啊,我呢是这么来理解主人的意思,或者按照我自己带的查询优化器机读呢,它的顺序呢?第一个先读谁呀?OK,那么这个时候呢,请同学们一定要注意我是不是对于myc克而言,主人要输了命令需要这些东西,我得这些,知道这些字段分别来自于哪些表吧,那么所以说它最关心的是什么呀?那么FROM2CONDITION join左还是右,While grew by heavy while grew by heavy,这个倒好说,永远在一块啊,然后呢,S select从第一位置变成多少啊?最终我们从四搜Q里面搂出来了以后这个结果集,最后买SQL是不是才select把它查出来,然后排序以后,按照limit的限制条数推送给主人,这是我的处理结果,听懂,也就是说对于买CQL而言,数据库而言,基读的时候他先从哪开口啊,知啊,这个不能答错,考过哈,那么最终。
03:57
我们呢,来总结一下我们呢需要熟悉和解决的问题,那么呢,拿一条鱼刺图。
04:10
就跟一个鱼骨头一样,这是鱼头CQ解析,大家看此处是不是有前后两种关系啊,先是我们说过缉毒的时候是先从浮蓉开干,那么先是个什么集正确A4条,B5条,一开始如果select新芙蓉A逗号B是不是四五二十条记录啊,来on主表保留,然后大家看此时是前后还是同时,那么join引不符合or也添加while非聚合face like别名,这个时候join了以后是不是while啊,那么呢?然后group by having,最后sla是不是差不多到这就出来了,然后order by,最终我们加上我们的limit,到底显示多少条记录清楚好,那么所以说整个的时候最关键一点要明白机读的时候,人家是从什么from开始读的。
05:10
明白,好,下面请同学们准备好纸和笔,我们呢,说一下今天的重点。
我来说两句