大家好,又见面了,我是你们的朋友全栈君。
假设您有两个表,每个表只有一个列,表数据如下
A B
- -
1 3
2 4
3 5
4 6
注意,(1,2)是A表唯一的,(3,4)是公共的,并且(5,6)是B表独有的
内连接是A表的所有行交上B表的所有行得出的结果集
select * from a INNER JOIN b on a.a = b.b;
select a.*, b.* from a,b where a.a = b.b;
a | b
--+--
3 | 3
4 | 4
左外连接是A表的所有行匹配上B表得出的结果集
select * from a LEFT OUTER JOIN b on a.a = b.b;
select a.*, b.* from a,b where a.a = b.b(+);
a | b
--+-----
1 | null
2 | null
3 | 3
4 | 4
右外连接是B表的所有行匹配上A表得出的结果集
select * from a RIGHT OUTER JOIN b on a.a = b.b;
select a.*, b.* from a,b where a.a(+) = b.b;
a | b
-----+----
3 | 3
4 | 4
null | 5
null | 6
全连接是A表的所有行并上B表的所有行得出的结果集
select * from a FULL OUTER JOIN b on a.a = b.b;
a | b
-----+-----
1 | null
2 | null
3 | 3
4 | 4
null | 6
null | 5
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/191788.html原文链接:https://javaforall.cn