SQL UNION - gộp kết quả của 2 câu truy vấn

2022-11-02 21:51:27

Mục đích của truy vấn SQL UNION là kết hợp kết quả của hai truy vấn với nhau trong khi loại bỏ các bản sao. Nói cách khác, khi sử dụng UNION , chỉ các giá trị duy nhất được trả về (tương tự như SELECT DISTINCT ).

Syntax

Cú pháp của UNION trong SQL như sau:

[SQL Statement 1]
UNION
[SQL Statement 2];

Các cột được chọn trong [Câu lệnh SQL 1] và [Câu lệnh SQL 2] cần phải có cùng kiểu dữ liệu để UNION hoạt động.

Ví dụ

Chúng tôi sử dụng các bảng sau cho ví dụ của chúng tôi.

Table Store_Information

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

Bảng Internet_Sales

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

Để tìm tất cả các ngày có giao dịch bán hàng, chúng tôi sử dụng câu lệnh SQL sau:

SELECT Txn_Date FROM Store_Information
UNION
SELECT Txn_Date FROM Internet_Sales;

Kết quả:

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

Xin lưu ý rằng nếu chúng tôi nhập " SELECT DISTINCT Txn_Date " cho một trong hai hoặc cả hai câu lệnh SQL, chúng tôi sẽ nhận được cùng một tập kết quả.



Xem thêm:


Chia sẻ:

Bài viết liên quan