SQL的四種連接-左外連接、右外連接、內連接、全連接


內連接inner join...on... /  join...on...

  展現出來的是共同的數據

  select m.Province,S.Name from member m inner join ShippingArea s on m.Province=s.ShippingAreaID;

  相當於:select m.Province,S.Name from member m , ShippingArea s where m.Province=s.ShippingAreaID;

左連接(左外連接)  left join...on...

  將返回右表的所有行。如果左表的某行在右表中沒有匹配行,則將為右表返回空值左連接:

  select m.Province,S.Name from member m left join ShippingArea s on m.Province=s.ShippingAreaID;

  以左表為主表,右表沒數據為null

右連接(右外連接)right join...on...

  將返回右表的所有行。如果右表的某行在左表中沒有匹配行,則將為左表返回空值;

  以右表為主表,左表中沒數據的為null

  select m.Province,S.Name from member m right join ShippingArea s on m.Province=s.ShippingAreaID;

全外連接FULL  JOIN ...on...

  完整外部聯接返回左表和右表中的所有行。當某行在另一個表中沒有匹配行時,則另一個表的選擇列表列包含空值。如果表之間有匹配行,則整個結果集行包含基表的數據值。

  select m.Province,S.Name from member m full join ShippingArea s on m.Province=s.ShippingAreaID;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM