mysql join詳解

join等價於inner join內連接,是返回兩個表中都有的符合條件的行。

left join左連接,是返回左表中所有的行及右表中符合條件的行。

right join右連接,是返回右表中所有的行及左表中符合條件的行。

full join全連接,是返回左表中所有的行及右表中所有的行,並按條件連接。

通常情況下,left join肯定比inner join返回的行數多。

爲什麼會多呢:

假設 a ,b 2個表

要查a的數據 b當做關聯

select a.* from a left join b on a.id = b.aid where b.type=12

這是個左連接 當b表裏多出一個type=12時數據不改變 

select a.* from a right  join b on a.id = b.aid where b.type=12

會多出一個type=12的數據 左邊表的數據則用null填充 

inner join則會2者同時存在纔會查出

發佈了115 篇原創文章 · 獲贊 20 · 訪問量 28萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章