數據庫連接(內鏈接,外連接(左連接,右連接)


  • 內連接:內連接也叫連接,是最早的一種連接。還可以被稱為普通連接或者自然連接,內連接是從結果表中刪除與其他被連接表中沒有匹配行的所有行,所以內連接可能會丟失信息。

     

    結果:為兩個聯接表中的匹配行的聯接

    先放兩個表  一個學生表;一個成績表

    數據庫連接(內鏈接,外連接(左連接,右連接)
    數據庫連接(內鏈接,外連接(左連接,右連接)
  •  

    這是進行內連接之后的表

    select *

    from Student inner join Score on Score.s_id=Student.s_id

    展現出來的是共同的數據

    數據庫連接(內鏈接,外連接(左連接,右連接)
  •  

    左連接(左外連接)

    將返回右表的所有行。如果左表的某行在右表中沒有匹配行,則將為右表返回空值左連接:select *from Student  LEFT JOIN Score ON Student.s_id=Score.s_id

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

    數據庫連接(內鏈接,外連接(左連接,右連接)
  •  

    左外連接

    如下圖:select *from Student left outer JOIN Score ON Student.s_id=Score.s_id

    數據庫連接(內鏈接,外連接(左連接,右連接)
  •  

    右連接(右外連接)

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

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

    select *from Student right JOIN Score ON Student.s_id=Score.s_id

    數據庫連接(內鏈接,外連接(左連接,右連接)
  •  

    右外連接:select *from Student right outer JOIN Score ON Student.s_id=Score.s_id

    數據庫連接(內鏈接,外連接(左連接,右連接)
  •  

    全外連接(FULL  JOIN 或 FULL OUTER JOIN)

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

    select *from Student full  JOIN Score ON Student.s_id=Score.s_id

    select *from Student full outer JOIN Score ON Student.s_id=Score.s_id

    數據庫連接(內鏈接,外連接(左連接,右連接)
  •  

    笛卡爾積:

    交叉連接即笛卡爾積,結果為A×B

    select *from Student cross JOIN Score

    數據庫連接(內鏈接,外連接(左連接,右連接)
  • 9

    自然連接(natural join)自然連接是一種特殊的等值連接,他要求兩個關系表中進行比較的必須是相同的屬性列,無須添加連接條件,並且在結果中消除重復的屬性列。要求是兩個這兩個關系中參與比較的屬性列必須是同名、同屬性。如果兩個關系中有多組這樣的屬性,默認是全部比較的

     

  • 免責聲明!

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



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