搞懂left join、join、right join的區別

搞懂 left join、join、right join的區別

1)概述

就是left join、join、right join和inner join等等各種join的區別。網上搜,最常見的就是一張圖解圖,如下:
clipboard.png

真的是一張圖道清所有join的區別啊,可惜我還是看不懂,可能人比較懶,然後基本一個left join給我就是夠用的了,所以就沒怎麼去仔細研究了,但是現實還是逼我去搞清楚,索性自己動手,總算理解圖中的含義了,下面就聽我一一道來。

首先,我們先來建兩張表,第一張表命名爲kemu,第二張表命名爲score:
在這裏插入圖片描述

2)left join

顧名思義,就是“左連接”,表1左連接表2,以左爲主,表示以表1爲主,關聯上表2的數據,查出來的結果顯示左邊的所有數據,然後右邊顯示的是和左邊有交集部分的數據。如下:

select
   *
from
   kemu
left join score on kemu.id = score.id

結果集:
在這裏插入圖片描述

3)right join

“右連接”,表1右連接表2,以右爲主,表示以表2爲主,關聯查詢表1的數據,查出表2所有數據以及表1和表2有交集的數據,如下:

select
   *
from
   kemu
right join score on kemu.id = score.id

結果集:
在這裏插入圖片描述

4)join

join,其實就是“inner join”,爲了簡寫才寫成join,兩個是表示一個的,內連接,表示以兩個表的交集爲主,查出來是兩個表有交集的部分,其餘沒有關聯就不額外顯示出來,這個用的情況也是挺多的,如下:

select
   *
from
   kemu
join score on kemu.id = score.id

結果集:
在這裏插入圖片描述
以上就是三種連接的區別!
————————————————————————————————————————————
內容來源:《【mySQL】left join、join、right join的區別》

關注公衆號,回覆 【算法】,獲取高清算法書!
在這裏插入圖片描述

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