SQL中Union和Union All的用法

2021-06-17 14:15:00 字數 1764 閱讀 1446

union 操作符:

union 操作符用於合併兩個或多個 select 語句的結果集,請注意,union 內部的 select 語句必須擁有

相同數量的列,列也必須擁有

相似的資料型別,同時,每條 select 語句中的列的

順序必須相同。

union跟 join 有些許類似,因為這兩個指令都可以由多個**中擷取資料,union只是將兩個結果聯結起來一起顯示,並不是聯結兩個表。

union 的語法如下: 

[sql 語句 1] 

union 

[sql 語句 2]

union 語法例句:

select column_name(s) from table_name1

union

select column_name(s) from table_name2

注釋:預設地,union 操作符是去了重複值的,如果允許重複的值,請使用 union all。

另外,union 結果集中的列名總是等於 union 中第乙個 select 語句中的列名。

union all操作符:

union all的語法如下: 

[sql 語句 1] 

union all

[sql 語句 2]

union all語法例句:

select column_name(s) from table_name1

union all

select column_name(s) from table_name2

union allunion不同之處在於union all會將所有符合條件的都列出來,既不去掉重複的值。而union是去掉重複的值。

下面是一同學用到的sql例子:

select custname.pfname,

(select name from pipeline where pipeid=custname.pipeid1) pipename,

(select name from station where stationid=custname.stationid1) stationname,

1 sort_num

from custname

union all

select custname.pfname,

(select name from pipeline where pipeid=custname.pipeid2) pipename,

(select name from station where stationid=custname.stationid2) stationname,

2 sort_num

from custname

union all

select custname.pfname,

(select name from pipeline where pipeid=custname.pipeid3) pipename,

(select name from station where stationid=custname.stationid3) stationname,

3 sort_num

from custname

order by 1,3;

sql中union和union all用法

如果我們需要將兩個select語句的結果作為乙個整體顯示出來,我們就需要用到union或者union all關鍵字。union 或稱為聯合 的作用是將多個結果合併在一起顯示出來。union和union all的區別是,union會自動壓縮多個結果集合中的重複結果,而union all則將所有的結果全...

SQL中UNION和UNION ALL的詳細用法

在開發中,有些資料的儲存可能涉及到分庫分表,查詢的時候,可能需要查詢所有的分表,這個時候,就需要用到union或者union all,下面介紹一下union的用法以及與union all的區別 union操作符用於合併兩個或多個select語句的結果集,這裡需要注意的是 union內部的select...

sql中UNION和UNION ALL的區別

寫sql時我們經常會遇到需要把從多張表查詢的集果集進行合併。這時就用到了union。使用union或union all 時一定要保證查詢的列的一致性 不然sql會報錯。欄位不一致的話可以用單引號來佔位。例 select t102.ci id as res id,t102.citype id asre...