1. 程式人生 > >union 和union all的區別

union 和union all的區別

union和union all都可以將2個或多個表進行合併,但這些子查詢必須具有相同的列,且對應的欄位的型別必須一致。union all直接合並,取到表中的所有值,沒有去重功能;union具有去重功能,取到的每個值都是唯一的。union all是將兩個結果簡單的合併後返回,union是按照欄位的順序排序後返回,所以從執行效率上union all要比union快。

對於兩張表A、B,分別有兩個欄位id和name。

A
id 	name
1	Lily
2	Anna
3	Zhangxiao
B
id	name
1	Lily
3	Zhangxiao
4	Zhaoyao

使用union合併

select id, name from A
union
select id, name from B

查詢結果


使用union all合併

select id, name from A
union all
select id, name from B

查詢結果