2016.10.19

inner join、left join、right

join、full join的区别

[TEST@ORA1]

SQL>select * from a;

编号 姓名

---- ----------

1000张三

2000李四

3000王五

[TEST@ORA1] SQL>select * from b;

编号 商品

---- ----------

1000电视机

2000录像机

4000自行车

[TEST@ORA1] SQL>set null空值--这里为了显示方面我把NULL定义成了[空值]

[TEST@ORA1] SQL>select a.*,b.* from a inner

join b on a.编号=b.编号;

编号 姓名 编号 商品

---- ---------- ---- ----------

1000张三1000电视机

2000李四2000录像机

[TEST@ORA1] SQL>select a.*,b.* from a left

join b on a.编号=b.编号;

编号 姓名 编号 商品

---- ---------- ---- ----------

1000张三1000电视机

2000李四2000录像机

3000王五 空值 空值

[TEST@ORA1] SQL>select a.*,b.* from a right

join b on a.编号=b.编号;

编号 姓名 编号 商品

---- ---------- ---- ----------

1000张三1000电视机

2000李四2000录像机

空值 空值4000自行车

[TEST@ORA1] SQL>select a.*,b.* from a full

join b on a.编号=b.编号;

编号 姓名 编号 商品

---- ---------- ---- ----------

1000张三1000电视机

2000李四2000录像机

3000王五 空值 空值

空值 空值4000自行车

以上,希望对你有所帮助。

简单明了地说,外连接分三种,即左连接(LEFT OUTER

JOIN)、右连接(RIGHT OUTER JOIN)、全连接(FULL

OUTER JOIN),下面就简单解析一下,假设有A和B两张表。1.A LEFTOUTER JOIN B表示把A表的记录都显示出来,把B表符合条件的结果集显示出来,不符合条件的用NULL表示。2.A RIGHT OUTER JOIN B表示把B表的记录都显示出来,把A表符合条件的结果集显示出来,不符合条件的用NULL表示。3.A FULL OUTER JOIN B表示把A表和B表的记录都显示出来,不符合条件的用NULL表示。

你可能感兴趣的:(2016.10.19)