資料庫基礎-JOIN

來源:互聯網
上載者:User

標籤:

JOIN分類

 

三、JOIN分類詳解

INNER JOIN:

僅僅返回兩個表中,匹配列相同的列值,所在行的資料。

SELECT * FROM Table1 t1 INNER JOIN Table2 t2 ON t1.Col1 = t2.Col1

 

LEFT OUTER JOIN:

左外串連:返回左表的所有資料,並且在右表中不能匹配的列值,其坐在行則使用空值。

SELECT * FROM Tables1 t1 LEFT OUTER JOIN Table2 t2 on t1.Col1 = t2.Col2

 

LEFT OUTER JOIN - WHERE NULL:

返回和右表不匹配的所有資料行

SELECT * FROM Table1 t1 LEFT OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1 WHERE t2.Col1 IS NULL

 

RIGHT OUTER JOIN:

右外串連:返回右表的所有資料,並且在左表中不能匹配的列值,其所做在行則使用空值。

SELECT * FROM Tables1 t1 RIGHT OUTER JOIN Table2 t2 on t1.Col1 = t2.Col2

 

 

RIGHT OUTER JOIN – WHERE NULL:

返回和左表不匹配的所有資料行。

SELECT * FROM Table1 t1 RIGHT OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1 WHERE t1.Col1 IS NULL

 

 

FULL OUTER JOIN:

完全串連可看作是左外串連和右外串連結果之和,返回兩個表的所有資料,如果匹配列的值在兩個表中匹配,那麼返回資料行,否則返回空值。

SELECT * FROM Table1 t1 FULL OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1 

 

FULL OUTER JOIN – WHERE NULL:

返回內串連以外的資料行,即匹配列坐在行以外的所有資料。

SELECT * FROM Table1 t1 FULL OUTER JOIN Table2 t2 ON t1.ID = t2.ID WHERE t1.ID IS NULL OR t2.ID IS NULL

 

CROSS JOIN:

交叉串連不需要任何串連條件。這個會把兩個表的的資料進行笛卡爾積操作。

SELECT * FROM Table1 t1 CROSS JOIN Table2 t2

 

資料庫基礎-JOIN

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.