SQL左右连接中的on and和on where的区别
程序员文章站
2023-10-26 20:00:34
在使用left join时,on and和on where条件的区别如下: 1、on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。 2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了, ......
在使用left join时,on and和on where条件的区别如下:
1、on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。
2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,
条件不为真的就全部过滤掉,on后的条件用来生成左右表关联的临时表,where后的条件对临时表中的记录进行过滤。
在使用inner join时,不管是对左表还是右表进行筛选,on and和on where都会对生成的临时表进行过滤
推荐阅读
-
Vue中computed和watch的区别
-
SQL联合查询inner join、outer join和cross join的区别详解
-
js中apply和Math.max()函数的问题及区别介绍
-
jQuery中attr()和prop()在修改checked属性时的区别
-
MySQL中datetime和timestamp的区别及使用详解
-
关于Oracle中sys、system和Scott用户下的数据库连接问题
-
了解javascript中let和var及const关键字的区别
-
详谈Pandas中iloc和loc以及ix的区别
-
jquery中的mouseleave和mouseout的区别 模仿下拉框效果
-
Python中staticmethod和classmethod的作用与区别