左外鏈結和右外連線

2021-08-28 09:35:01 字數 656 閱讀 8171

兩個表:

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,就像上面我舉得例子一樣。

如果不用外連線的話,比如【王五】沒有交易記錄的話,那麼使用者表裡的【王五】的資訊就不會顯示,就失去了查詢所有使用者交易記錄的意義了。

****************

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

MySQL左外鏈結與右外連線

外鏈結查詢 即要查詢有關聯關係的資料,還要查詢沒有關聯關係的資料。個人理解為 表a和表b兩個關聯的列中 如下圖 emmm,簡單的來說兩個表的關聯關係 book.bid bookshop.id,他們兩個表的關聯的兩個列中可能book.bid的列中有值,而bookshop.id中為空值,這個時候就 需要...

左連線 左外連線 右外連線

在之前,我對mssql中的內連線和外連線所得出的資料集不是很清楚。這幾天重新溫習了一下sql的書本,現在的思路應該是很清楚了,現在把自己的理解發出來給大家溫習下。希望和我一樣對sql的連線語句不太理解的朋友能夠有所幫助。發這麼菜的教程,各位大大們別笑話偶了,呵 d 有兩個表a和表b。表a結構如下 a...

自然連線,外連線,左外連線,右外連線

1.自然連線 結果基於表r和s的笛卡爾乘積,取對應的r和s中相同屬性組都相同的值,同時相同屬性組只保留乙個 先來看圖示,2個表以及自然連線的結果 操作的步驟 1.1找出2個表中相同的屬性組 屬性a加上屬性b 1.2找相同屬性組中,相同的屬性值所對應的元組 相同的屬性值 1.2.相同屬性值對應的元組 ...