圖解LEFT JOIN、RIGHT JOIN與JOIN的區別
阿新 • • 發佈:2018-11-12
如圖:
ID | NAME | AGE |
---|---|---|
1 | 張三 | 11 |
2 | 李四 | 12 |
3 | 王五 | 13 |
ID | NAME | COURSE |
---|---|---|
3 | 張三 | 語文 |
4 | 張三 | 數學 |
5 | 馬六 | 英語 |
1、ID關聯(LEFT JOIN)
SELECT * FROM T1 LEFT JOIN T2 ON T1.ID=T2.ID
結果如圖:
聯絡兩個表:
分析:以T1表(左邊)為主表,查詢與T1表有相同ID的資料。
2、ID關聯(RIGHT JOIN)
SELECT * FROM T1 RIGHT JOIN T2 ON T1.ID=T2.ID
結果如圖:
聯絡兩個表:
分析:以T2表(右邊)為主表,查詢與T2表有相同ID的資料。
轉換:即
SELECT * FROM T1 RIGHT JOIN T2 ON T1.ID=T2.ID
等同於
SELECT * FROM T2 LEFT JOIN T1 ON T1.ID=T2.ID
查詢出來的資料一樣,但呈現方式不同,如下圖:
3、ID關聯(JOIN)
SELECT * FROM T1 JOIN T2 ON T1.ID=T2.ID
等同於
SELECT * FROM T2 JOIN T1 ON T1.ID=T2.ID
結果如圖:
分析:查詢兩個有相同ID的的資料。
------------------------------------------------------這時候如果換一種方式呢,比如以NAME關聯----------------------------------------------
①NAME關聯(LEFT JOIN)
SELECT * FROM T1 JOIN T2 ON T1.NAME=T2.NAME
結果如圖:
聯絡兩個表:
分析:以T1表(左邊)為主表,查詢與T1表有相同NAME的資料(與以ID關聯原理一樣,LEFT JOIN與JOIN就不一一列出來了)。