left join 和 right join的區別
阿新 • • 發佈:2021-06-17
用一句話來概括就是:
left join 會查詢出左表所有的資料,以及右表能連線上的欄位
right join 會查詢出右表所有的資料,以及左表能連線上的欄位
用一張圖來概括就是:
大白話的說法就是:
比方說,我們有兩張表 一張是人物表person 一張是年齡表age
person
id/姓名
01/張三
02/李四
03/王五
另一張
id/age
02/20
03/25
04/23
1.left join
左連線,什麼意思呢?就是以左表為主,以person為主,關聯上age的資料,顯示的是左表的全部資料,以及顯示右表與左表交集的資料
select * from person left join age on person.id=age.id
得出的結果為
id/姓名/id/age
01/張三/null/null
02/李四/02/20
03/王五/03/25
2.right join
右連線,顧名思義,就是以右表為主
select * from age left join person on person.id=age.id
得出的結果為
id/姓名/id/age
02/李四/02/20
03/王五/03/25
null/null/04/23
3.join
最後在補充一個 join,也就是inner join,內連線,也就是隻顯示有交集的部分
得出的結果為
id/姓名/id/age
02/李四/02/20
03/王五/03/25