1. 程式人生 > >mysql內連接、左連接、右連接

mysql內連接、左連接、右連接

包括 一個表 right left from 一個 n) sql 運算

內連接(INNER JOIN)(典型的連接運算,使用像 = 或 <> 之類的比較運算符)。包括相等連接和自然連接。 內連接使用比較運算符根據每個表共有的列的值匹配兩個表中的行
左連接(LEFT JOIN 或 LEFT OUTER JOIN)是右左邊表中的數據為基準,若左表有數據右表沒有數據,否則顯示左表中的數據右表中的數據顯示為空
右連接(RIGHT JOIN 或 RIGHT OUTER JOIN)是以右邊表中的數據為基準,若右表有數據左表沒有數據,否則顯示右表中的數據左表中的數據顯示為空
全連接( FULL JOIN 或 FULL OUTER JOIN) 完整外部連接返回左表和右表中的所有行。當某行在另一個表中沒有匹配行時,則另一個表的選擇列表列包含空值。如果表之間有匹配行,則整個結果集行包含基表的數據值。
下面用幾個實例來詳細說明
兩個表:
A(id,name)
數據:(1,張三)(2,李四)(3,王五)
B(id,name)
數據:(1,學生)(2,老師)(4,校長)

內連接結果:
select A.*,B.* from A inner join B on A.id=B.id;
1 張三 1 學生
2 李四 2 老師

左連接結果:
select A.*,B.* from A left join B on A.id=B.id;
1 張三 1 學生
2 李四 2 老師
3 王五 NULL NULL

右連接結果:
select A.*,B.* from A right join B on A.id=B.id;
1 張三 1 學生
2 李四 2 老師
NULL NULL 4 校長

mysql內連接、左連接、右連接