表结构

A表

A_ID A_NAME
1 A
2 B
3 C
6 D

B表

B_ID B_NAME
1 Q
2 W
3 E
5 R

右连接

select a.id,a.name,b.id,b.name from a, b where a.id(+) = b.id;

结果

A_ID A_NAME B_ID B_NAME
1 A 1 Q
2 B 2 W
3 C 3 E
    5 R

左连接

select a.id,a.name,b.id,b.name from a, b WHERE a.id = b.id(+);

结果

A_ID A_NAME B_ID B_NAME
1 A 1 Q
2 B 2 W
3 C 3 E
6 D    

全连接

select a.id,a.name,b.id,b.name from a full join b on a.id = b.id;

结果

A_ID A_NAME B_ID B_NAME
1 A 1 Q
2 B 2 W
3 C 3 E
    5 R
6 D    

结论

  1. 左连接:A=B(+)
  2. 右连接:(+)A=B
  3. 右连接说明等号右侧的所有记录均会被显示,无论其在左侧是否得到匹配,左连接与之相反
  4. 全连接返回的是两表的全集,无论匹配不匹配都返回行

原文链接:https://miansen.wang/2018/09/14/5/