UNION 指令的目的是將兩個 SQL 語句的結果合併起來。從這個角度來看, UNIONJOIN 有些許類似,因為這兩個指令都可以由多個表格中擷取資料。 UNION 的一個限制是兩個 SQL 語句所產生的欄位需要是同樣的資料種類。另外,當我們用 UNION 這個指令時,我們只會看到不同的資料值 (類似 SELECT DISTINCT)。

UNION 的語法如下:

[SQL 語句 1]
UNION
[SQL 語句 2];

假設我們有以下的兩個表格,

Store_Information 表格
 Store_Name  Sales  Txn_Date 
 Los Angeles 1500  05-Jan-1999 
 San Diego 250  07-Jan-1999 
 Los Angeles 300  08-Jan-1999 
 Boston 700  08-Jan-1999 

Internet_Sales 表格
 Txn_Date  Sales 
 07-Jan-1999 250 
 10-Jan-1999 535 
 11-Jan-1999 320 
 12-Jan-1999 750 

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

SELECT Txn_Date FROM Store_Information
UNION
SELECT Txn_Date FROM Internet_Sales;

結果:

Txn_Date
Jan-05-1999
Jan-07-1999
Jan-08-1999
Jan-10-1999
Jan-11-1999
Jan-12-1999

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

下一頁:SQL UNION ALL

本頁最近於 2022年6月13日更新



Copyright © 2024   1keydata.com   版權所有