SQL UNION - gộp kết quả của 2 câu truy vấn
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:
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:
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:
- SEQUENCE và NEXTVAL - Tạo khóa chính tăng tự động
- Truy vẫn con trong SQL và cách sử dụng
- SQL LIMIT - Hạn chế số lượng kết quả trả về