您好,登錄后才能下訂單哦!
JOIN對于接觸過數據庫的人,這個詞都不陌生,而且很多人很清楚各種JOIN,還有很多人對這個理解也不是很透徹,這次就說說JOIN操作。
圖片是很容易被接受和理解,所以嘗試使用圖片來說明一下。
客官:小二,上JOIN分類!
……
小二:客官,新鮮出爐的JOIN分類圖片來嘍。
客官:小二,速速詳細道來!
小二:現在讓小二來給您詳細介紹。
僅僅返回兩個表中,匹配列相同的列值,所在行的數據。
SELECT * FROM Table1 t1 INNER JOIN Table2 t2 ON t1.Col1 = t2.Col1
左外連接:返回左表的所有數據,并且在右表中不能匹配的列值,其坐在行則使用空值。
SELECT * FROM Tables1 t1 LEFT OUTER JOIN Table2 t2 on t1.Col1 = t2.Col2
返回和右表不匹配的所有數據行
SELECT * FROM Table1 t1 LEFT OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1 WHERE t2.Col1 IS NULL
右外連接:返回右表的所有數據,并且在左表中不能匹配的列值,其所做在行則使用空值。
SELECT * FROM Tables1 t1 RIGHT OUTER JOIN Table2 t2 on t1.Col1 = t2.Col2
返回和左表不匹配的所有數據行。
SELECT * FROM Table1 t1 RIGHT OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1 WHERE t1.Col1 IS NULL
完全連接可看作是左外連接和右外連接結果之和,返回兩個表的所有數據,如果匹配列的值在兩個表中匹配,那么返回數據行,否則返回空值。
SELECT * FROM Table1 t1 FULL OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1
返回內連接以外的數據行,即匹配列坐在行以外的所有數據。
SELECT * FROM Table1 t1 FULL OUTER JOIN Table2 t2 ON t1.ID = t2.ID WHERE t1.ID IS NULL OR t2.ID IS NULL
交叉連接不需要任何連接條件。這個會把兩個表的的數據進行笛卡爾積操作。
SELECT * FROM Table1 t1 CROSS JOIN Table2 t2
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。