一、內連接
內連接也叫自然連接同時也叫全等連接,即左邊表和右邊表共有數據的查詢
select * from 表A a inner join 表B b on a.key = b.key;
二、左連接
左連接,即查詢左邊表的獨有數據
select * from 表A a left join 表B b on a.key = b.key where b.key is null;
三、左外連接
左外連接,查詢左邊表的所有數據,即左邊表獨有的數據+左邊和右邊的共有的數據
select * from 表A a left join 表B a on a.key = b.key;
四、右連接
右連接,即查詢右邊表的獨有數據
select * from 表A a right join 表B b on a.key = b.key where a.key is null;
五、右外連接
右外連接,查詢右邊表的所有數據,即右邊表獨有的數據+右邊表和左邊表共有的數據
select * from 表A a right join 表B b on a.key = b.key;
六、全連接
全連接,即左邊表獨數據+右邊表獨數據(MySQL不支持)
可用如下方式實現全連接的效果:
select * from 表A a left join 表B b on a.key = b.key where a.key is null
union
select * from 表A a right join 表B b on a.key = b.key where b.key is null;
七、全外連接
全外連接,即左邊表數據+右邊表數據+左邊表和右邊表共有數據查詢(MySQL不支持)
select * from 表A a left join 表B b on a.key = b.key
union
select * from 表A a right join 表B b on a.key = b.key;