瞭解SQL中 inner join、 left join 、right join、 outer join之間的區別

    爲了幫助理解 inner join、 left join 、right join、 outer join之間的區別,例舉如下例子。使用時,可以對號入座。

 

A(a1,b1,c1)        B(a2,b2)
a1      b1       c1       a2       b2
01     
數學    95       01      張三
02    
語文    90       02      李四
03    
英語    80       04      王五


 1、select A.*,B.* from A

inner join B on(A.a1=B.a2)

結果是:
a1       b1       c1       a2       b2
01     
數學   95       01      張三
02     
語文     90       02      李四

2、select A.*,B.* from A

 left outer join B on(A.a1=B.a2)
結果是:
a1       b1       c1       a2          b2
01     
數學   95       01         張三
02     
語文   90       02         李四
03    
英語     80       NULL    NULL

3、select A.*,B.* from A

right outer join B on(A.a1=B.a2)
結果是:
a1          b1        c1            a2      b2
01       
數學   95            01     張三
02        
語文      90            02     李四
NULL   NULL    NULL      04     
王五

4、select A.*,B.* from A

full outer join B on(A.a1=B.a2)
結果是:
a1          b1          c1          a2           b2
01        
數學    95          01          張三
02         
語文    90          02          李四
03         
英語        80          NULL    NULL
NULL    NULL     NULL     04         
王五

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章