- inner join 內聯接(左右不爲Null)
select * from tableA a inner join tableB b on a.id=b.id
內聯接——只產生全部表中存在匹配的記錄,就是常見的where語句鏈接,兩邊的表返回的都是匹配的記錄。
- left outer join 左外聯接(左全右Null)
select * from tableA a left join tableB b on a.id=b.id
左外聯接——左表的全部記錄都出如今結果集中,而右表有匹配則顯示記錄,無匹配則顯示NULL。
- rigth outer join 右外聯接(左Null右全)
select * from tableA a right join tableB b on a.id=b.id
右外聯接——右表的全部記錄都出如今結果集中,而左表有匹配則顯示記錄,無匹配則顯示NULL。
- full outer join 全外聯接(左外聯接 + 右外聯接)
select * from tableA a full join tableB b on a.id=b.id
全外聯接——返回左表和右表中的全部行。當某行在另外一個表中沒有匹配行時,則另外一個表的選擇列表列包含空值。若是表之間有匹配行,則整個結果集行包含基表的數據值。
- cross join 交叉聯接(返回笛卡爾乘積)
select * from tableA a cross join tableB
交叉聯接---返回左表中的全部行,左表中的每一行與右表中的全部行組合。交叉聯接也稱做笛卡爾積。