一、內連接(INNER JOIN)
獲取兩個表中欄位匹配關系的記錄,需要兩個表都滿足條件的資料才會回傳,
如下圖陰影部分所示區域,

實體:
有一張表table_a,資料如下:

表table_b,資料如下:

內連接SQL(也可以省略INNER,直接用JOIN):
SELECT a.aid, a.aname, b.bid, b.bname FROM table_a AS a INNER JOIN table_b AS b ON a.aid = b.bid;

二、左連接(LEFT JOIN)
左表為主表,獲取左表的所有記錄,即使右表沒有對應匹配的記錄,右表沒有匹配的記錄欄位會回傳null,如下圖陰影部分所示區域,

左連接SQL:
SELECT a.aid, a.aname, b.bid, b.bname FROM table_a AS a LEFT JOIN table_b AS b ON a.aid = b.bid;

三、右連接(RIGHT JOIN)
右連接和左連接正好相反,右連接以右表為主表,用于獲取右表所有記錄,即使左表沒有對應匹配的記錄,左表沒有匹配的記錄欄位會回傳null,如下圖陰影部分所示區域,

右連接SQL:
SELECT a.aid, a.aname, b.bid, b.bname FROM table_a AS a RIGHT JOIN table_b AS b ON a.aid = b.bid;

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/48499.html
標籤:MySQL
上一篇:MySQL事務
