问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql中left join on 和where的执行顺序 ?

发布网友 发布时间:2022-04-08 07:06

我来回答

4个回答

热心网友 时间:2022-04-08 08:35

(8)SELECT (9)DISTINCT (11)<Top Num> <select list>
(1)FROM [left_table]
(3)<join_type> JOIN <right_table>
(2)ON <join_condition>
(4)WHERE <where_condition>
(5)GROUP BY <group_by_list>
(6)WITH <CUBE | RollUP>
(7)HAVING <having_condition>
(10)ORDER BY <order_by_list>

逻辑查询处理阶段简介
FROM:对FROM子句中的前两个表执行笛卡尔积(Cartesian proct)(交叉联接),生成虚拟表VT1
ON:对VT1应用ON筛选器。只有那些使<join_condition>为真的行才被插入VT2。
OUTER(JOIN):如 果指定了OUTER JOIN(相对于CROSS JOIN 或(INNER JOIN),保留表(preserved table:左外部联接把左表标记为保留表,右外部联接把右表标记为保留表,完全外部联接把两个表都标记为保留表)中未找到匹配的行将作为外部行添加到 VT2,生成VT3.如果FROM子句包含两个以上的表,则对上一个联接生成的结果表和下一个表重复执行步骤1到步骤3,直到处理完所有的表为止。
WHERE:对VT3应用WHERE筛选器。只有使<where_condition>为true的行才被插入VT4.
GROUP BY:按GROUP BY子句中的列列表对VT4中的行分组,生成VT5.
CUBE|ROLLUP:把超组(Suppergroups)插入VT5,生成VT6.
HAVING:对VT6应用HAVING筛选器。只有使<having_condition>为true的组才会被插入VT7.
SELECT:处理SELECT列表,产生VT8.
DISTINCT:将重复的行从VT8中移除,产生VT9.
ORDER BY:将VT9中的行按ORDER BY 子句中的列列表排序,生成游标(VC10).
TOP:从VC10的开始处选择指定数量或比例的行,生成表VT11,并返回调用者。

热心网友 时间:2022-04-08 09:53

http://www.cnblogs.com/qanholas/archive/2010/10/24/1859924.html

热心网友 时间:2022-04-08 11:28

看执行计划不就知道了,现在都是基于成本的优化器了,只有看计划才能知道先执行那部分

热心网友 时间:2022-04-08 13:19

先连接,应该是从from之后顺序执行,所以先连接
sql中left join on 和where的执行顺序 ?

(8)SELECT (9)DISTINCT (11)&lt;Top Num&gt; (1)FROM [left_table](3)&lt;join_type&gt; JOIN &lt;right_table&gt; (2)ON &lt;join_condition&gt; (4)WHERE &lt;where_condition&gt; (5)GROUP BY &lt;group_by_list&gt; (6)WITH &lt;CUBE | RollUP&gt; (7)HAVING &lt;having_condition&gt; (10)ORDER BY &lt;order_by_list&gt; 逻辑...

SQL 之 ON 和 WHERE执行顺序

我们可以看到,执行结果是一样的,inner join 查询的就是驱动表与被驱动表同时存在的记录,所以过滤条件不管放在 ON 里,还是放在 WHERE 里,执行结果是一样的 ON 和 WHERE 的生效时机 ON 后的关联条件与 WHERE 后的过滤条件,这两者的执行顺序是否如 SQL 执行顺序图中说的那样,ON 一定先与 WH...

MySql 中多个left join 之间的顺序问题

这样写是没有问题的,也可以这样写:SELECT * FROM post LEFT JOIN user ON...LEFT JOIN block ON...WHERE ...ORDER BY ...LIMIT ...(2)上面两个到底哪个效率高呢,应该是(1)效率较高,关于连接条件的优化在顺序上有个原则:数剧量少的条件尽量写在前面。一个论坛当中板块的数量要比用户...

Hive SQL语句执行顺序

Hive 中 sql 语句的执行顺序如下:from .. where .. join .. on .. select .. group by .. select .. having .. distinct .. order by .. limit .. union/union all 下面我们通过一个 sql 语句分析下:上面这条 sql 语句是可以成功执行的,我们看下它在 MR 中的执行顺序:Map 阶段 ...

sql left join 关联跟 直接用where 两个字段id相同关联有什么区别?

后面的是只有两个记录集能关联上的时候才会显示记录。 而前面的左外关联 是指以左表 为主,左表有的数据是必然会显示出来的,不论能不能和 第二个表 的数据关联上。

sql server 中筛选条件在有关联表时放在where后面和放在on后面有什么区...

区别大了,on 是用在 表与表间(left join 、right join 、inner join 、full join)的连接条件 ,where是查询条件,两个是可以一起用的。如:select a.*,b.from a left join b --a表 左连接 b表 on a.id=b.aid --连接条件 where a.name = "column" --查询条件 ...

如何使用left join on and查询

这时主表条件写在WHERE之后,辅表条件写在ON后面。二、总结:–sql语句1可见,left join 中左表的全部记录将全部被查询显示,on 后面的条件对它不起作用,除非再后面再加上where来进行筛选,这就是sql语句2了。–由sql语句3可见,on后面的条件中,右表的限制条件将会起作用。希望对你有帮助 ...

sql join (以left join为例)的表的先后顺序主要如何考虑?

您好,SQL语句有join是因为把优化后的数据重新联结完整,体现直观数据表达的作用.(这样讲可能还是太抽象).我们做数据优化的时候.一般要理清楚数据实体的关联关系.例如:E-R 所以先后顺序的问题.left join的话.第一张表就是主体表 后面的都是与这张表有关联关系的表(一般是明细表,辅表)把主体表与left ...

这SQL语句里的ON 是什么意思啊

on、where、having这三个都可以加条件的子句中,on是最先执行,where次之,having最后。有时候如果这先后顺序不影响中间结果的话,那最终结果是相同的。但因为on是先把不符合条件的记录过滤后才进行统计,它就可以减少中间运算要处理的数据,按理说应该速度是最快的。根据上面的分析,可以知道where也应该...

left join on 加条件和where加条件是什么?

1、在on后面加条件仅适合用于left join (right join未测,inner join与where类似)。2、不考虑where条件下,left join会把左表所有数据查询出来,on及其后面的条件仅仅会影响右表的数据(符合就显示,不符合全部为null)。3、where后面加条件与左连接本身无关,影响的是连接产生后的数据。4、所以左连接...

leftjoin和where效率 join on和where的区别 join和left join区别 left outer join left join on and join和where left join on 多条件 left join on用法 left join on多表关联
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
肝癌手术引流管放哪里 肝癌手术切除后,如果引流管的水大量流进腹腔的话会引起全身转移吗? 肝癌术后引流液多久可以消失 海淀区车号以哪个字母开头 为什么在安卓应用宝里下我的世界,原来明明应用宝上显示着0.14.1的下... 从昨天开始 我的手机应用宝就老是自动下载我的世界加速器。。。还有... 我的世界不用下应用宝就能玩 有一款手机游戏原始人可以打动物和捡石头盖房子日落之前必须回来_百度... 应用宝里下载的我的世界是不是正版? 怎么申请apple id 手机怎么申请apple id 华为成为国产高端手机最后牌面!售价比苹果12更贵:但更加抢手吗? 华为手机那一款好 华为HUAWEI MatePad Pro 12有录音翻译功能吗? 华为mate12电脑有R5的嘛,我有个电脑但是不会看型号,13寸R5.好像是16 512的? 貌若潘安是什么意思?潘安又是什么 说了一句成语貌似潘安这个潘安是什么人有多帅 华为mate苹果12,会选择哪个 夸人漂亮用“貌若潘安”?仅美貌够吗? 华为mate12 怎样关闭人声提示? 梦见我的朋友被刀刺 美如天仙,貌若潘安是什么意思? 貌比潘安才过宋玉的典故出自哪里 “美如天仙,貌若潘安”是什么意思? “貌比潘安”的下一句是什么?拜托各位了 3Q 肚子肢肪多怎样减肥 祥康快车 王晗吉林电视台 节目怎么消失了,是永远没了,还是换地方了 祥康健康快车小偏方糖尿病爱拉肚子 吉林台祥康快车王晗讲的一个降血压的方法,上次匆匆看了看,没记住,求哪位大侠看了,或是在哪一期 月经期间喝红酒对身体有害吗?拜托了各位 谢谢 详康快车偏方腹部积水 葡萄的英语怎么写? 葡萄的笔顺怎么写 葡萄英语怎么读 葡萄的英文怎么说 妮娜皇后葡萄能用T架种植的株行距是多少 葡萄酒瓶身上有个字母T,是什么意思? 葡萄t三角形abc中角c=90度,o是ab上一点半径的圆o与边bc相交于点e过点一做现役 葡萄在世界上的栽培历史是怎样的? 葡萄如何砧木育种? 葡萄主要架式有哪些? 葡萄在中国的现状是怎样的? 葡萄的架式有哪些? 一锤定音(正确读音我来选)。 葡 萄  tǎo(  )tao(  ) 迫 不及待 pè(  )p 用英文推荐清徐葡萄和t教这两种太原美食 需要一篇写葡萄的作文,谢谢T_T 现在退休年龄是多少岁可以退休 有糕母羊,不拉屎蛋,是黄色粘液,请问怎么回事。 母羊粪便一串串带有粘液怎么回事? 小羊的粪便奇臭,且很黏 山羊的粪便带有粘液