SQL UNION 操作符 和 UNION ALL 操作符
SQL UNION 操作符
UNION 操作符用於合併兩個或多個 SELECT 語句的結果集。
請注意,UNION 內部的 SELECT 語句必須擁有相同數量的列。列也必須擁有相似的資料型別。同時,每條 SELECT 語句中的列的順序必須相同。
SQL UNION 語法
SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2
註釋:預設地,UNION 操作符選取不同的值。如果允許重複的值,請使用 UNION ALL。
SQL UNION ALL 語法
SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2
另外,UNION 結果集中的列名總是等於 UNION 中第一個 SELECT 語句中的列名。
下面的例子中使用的原始表:
Employees_China:
E_ID | E_Name |
---|---|
01 | Zhang, Hua |
02 | Wang, Wei |
03 | Carter, Thomas |
04 | Yang, Ming |
Employees_USA:
E_ID | E_Name |
---|---|
01 | Adams, John |
02 | Bush, George |
03 | Carter, Thomas |
04 | Gates, Bill |
使用 UNION 命令
例項
列出所有在中國和美國的不同的僱員名:
SELECT E_Name FROM Employees_China
UNION
SELECT E_Name FROM Employees_USA
結果
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Gates, Bill |
註釋:這個命令無法列出在中國和美國的所有僱員。在上面的例子中,我們有兩個名字相同的僱員,他們當中只有一個人被列出來了。UNION 命令只會選取不同的值。
UNION ALL
UNION ALL 命令和 UNION 命令幾乎是等效的,不過 UNION ALL 命令會列出所有的值。
SQL Statement 1 UNION ALL SQL Statement 2
使用 UNION ALL 命令
例項:
列出在中國和美國的所有的僱員:
SELECT E_Name FROM Employees_China
UNION ALL
SELECT E_Name FROM Employees_USA
結果
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Carter, Thomas |
Gates, Bill |
相關文章
- SQL UNION 和 UNION ALL 操作符SQL
- sql中union和union allSQL
- SQL Union和SQL Union All用法(轉)SQL
- sql中union和union all的用法SQL
- sql中UNION和UNION ALL的區別SQL
- 【SQL】UNION ALL 與UNION 的區別SQL
- union all和union的區別
- union和union all的區別
- union 和union all 使用區別
- `FULL JOIN` 和 `UNION ALL`
- 理解full outer jion,union,union all
- Union與Union All的區別
- Union和Union All到底有什麼區別
- sql_intersect交集_minus差集_並集union_union allSQL
- MySQL學習(五) UNION與UNION ALLMySql
- 查詢集合操作union與union all
- ORACLE中union/union all/Intersect/Minus用法Oracle
- Oracle中的Union、Union All、Intersect、MinusOracle
- sql_union all_列別名SQL
- Oracle 中Union、Union All、Intersect、Minus(並,交,差)Oracle
- 表連線 join和(+)、union和uion allUI
- UNION效率比UNION ALL效率高——SQL優化之Everything is possibleSQL優化
- Oracle的集合操作(union、union all、intersect、minus集合函式)Oracle函式
- union all 最佳化案例
- 【轉】UNION效率比UNION ALL效率高——SQL優化之Everything is possibleSQL優化
- MYSQL學習筆記24: 多表查詢(聯合查詢,Union, Union All)MySql筆記
- sql注入之union注入SQL
- Oracle union all 不走索引的優化Oracle索引優化
- 透過union all把sql查詢的結果拼接起來SQL
- 【SQL】14 UNION 操作符、SELECT INTO 語句、INSERT INTO SELECT 語句、CREATE DATABASE 語句、CREATE TABLE 語句SQLDatabase
- SQL優化案例-union代替or(九)SQL優化
- 【SQL 學習】UNION 的排序方式!SQL排序
- oracle知識整理(1) union和union all的區別,left join和right join的區別(各種join的區別)Oracle
- union用法
- SQL Server中的集合運算: UNION, EXCEPT和INTERSECTSQLServer
- SQL最佳化案例-union代替or(九)SQL
- Oracle SQL語句優化之UNIONOracleSQL優化
- sql 優化過程之union 替換 orSQL優化