(記錄合並)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是去了重的。如果允許重復的值,請使用UNION ALL

SQL UNION ALL 語法

SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2

另外,UNION結果集中的列名總是等於UNION中第一個SELECT語句中的列名。

UNION指令的目的是將兩個SQL語句的結果合並起來。從這個角度來看,UNION跟JOIN有些許類似,因為這兩個指令都可以由多個表格中提取資料。UNION只是將兩個結果聯結起來一起顯示,並不是聯結兩個表。

示例

假設我有兩個表

而我們要找出來所有有營業額(sales)的日子。要達到這個目的,我們用以下的SQL語句:

SELECT Date FROM Store_Information
UNION
SELECT Date FROM Internet_Sales

結果:

有一點值得注意的是,如果我們在任何一個SQL語句(或是兩句都一起)用"SELECT DISTINCT Date"的話,那我們會得到完全一樣的結果。

 

我們要找出有店面營業額以及網絡營業額的日子,要達到這個目的,我們用以下的SQL語句:

SELECT Date FROM Store_Information
UNION ALL
SELECT Date FROM Internet_Sales

結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM