2013-10-09 127 views
24

內連接和外連接的區別。我正在使用兩個表,並希望獲取來自這兩個表,所以這類型的連接,我們應該用的到,擁有的數據,我們可以解決我們的問題內連接和外連接有什麼區別

+2

http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html – Quentin

+0

請注意,PHP和SQL是*不同的語言*。你的問題與PHP無關。 –

+0

它取決於您的要求,您需要哪種類型的連接。 :) – Roopendra

回答

20

內加入的作家 - 內部聯接使用或者相當於查詢給出兩個表的交集,即它們共有的兩行。
LEFT OUTER JOIN - 左外連接將給予B.
全外連接在一個所有行,以及任何普通行 - 完全外部連接會給你A和B的結合,即所有的行在A和B中的所有行中。如果A中的某些內容沒有B中的相應數據,則B部分爲空,反之亦然。 檢查this

14

INNER JOIN:返回所有行時,有兩個表中至少有一個匹配

LEFT JOIN:左表返回所有行和右表匹配的行

右連接:返回左表右表中的所有行,以及匹配的行

FULL JOIN :在其中一個表中匹配時返回所有行

我希望這會對你有所幫助

2

內部連接匹配鍵上的表,但外部連接僅爲一側匹配鍵。 例如,當您使用左外連接時,該查詢會帶來整個左側表並將右側與左表主鍵相匹配,並且在那裏沒有匹配的位置爲空。

75

這是理解的最好和最簡單的方式加入:

enter image description here

學分轉到本文HERE

相關問題