SQL中的“on ..”和“on .. where”之间的区别加入?
发布时间:2020-12-12 16:15:44 所属栏目:MsSql教程 来源:网络整理
导读:Sql语句. 1.select a.* from A a left join B b on a.id =b.id and a.id=2;2.select a.* from A a left join B b on a.id =b.id where a.id=2; 这两个sql语句有什么区别? 解决方法 create table A(id int);create table B(id int);INSERT INTO A VALUES(1);I
Sql语句.
1.select a.* from A a left join B b on a.id =b.id and a.id=2; 2.select a.* from A a left join B b on a.id =b.id where a.id=2; 这两个sql语句有什么区别? 解决方法create table A(id int); create table B(id int); INSERT INTO A VALUES(1); INSERT INTO A VALUES(2); INSERT INTO A VALUES(3); INSERT INTO B VALUES(1); INSERT INTO B VALUES(2); INSERT INTO B VALUES(3); SELECT * FROM A; SELECT * FROM B; id ----------- 1 2 3 id ----------- 1 2 3 过滤JOIN以防止在JOIN进程期间添加行. select a.*,b.* from A a left join B b on a.id =b.id and a.id=2; id id ----------- ----------- 1 NULL 2 2 3 NULL JOIN发生后,将过滤. select a.*,b.* from A a left join B b on a.id =b.id where a.id=2; id id ----------- ----------- 2 2 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |