1. 程式人生 > >sql左外連線和右外連線的區別

sql左外連線和右外連線的區別

兩個表:
A(id,name)
資料:(1,張三)(2,李四)(3,王五)
B(id,name)
資料:(1,學生)(2,老師)(4,校長)

左連線結果:
select A.*,B.* from A left join B on A.id=B.id;
1 張三 1 學生
2 李四 2 老師
3 王五 NULL NULL

右連結結果:
select A.*,B.* from A right join B on A.id=B.id;
1 張三 1 學生
2 李四 2 老師
NULL NULL 4 校長

****************
補充:下面這種情況就會用到外連線
比如有兩個表一個是使用者表,一個是交易記錄表,如果我要查詢每個使用者的交易記錄就要用到左外外連線,因為不是每個使用者都有交易記錄。

用到左外連線後,有交易記錄的資訊就會顯示,沒有的就顯示NULL,就像上面我舉得例子一樣。
如果不用外連線的話,比如【王五】沒有交易記錄的話,那麼使用者表裡的【王五】的資訊就不會顯示,就失去了查詢所有使用者交易記錄的意義了。
****************

看一下結果就能明白左右連線的區別了

原文網址https://zhidao.baidu.com/question/102609896.html 侵刪