Toán tử UNION trong SQL Server
Toán tử UNION được dùng để kết hợp 2 bộ kết quả từ 2 hoặc nhiều lệnh SELECT. Nó sẽ xóa các hàng trùng trong các lệnh SELECT này.
Mỗi lệnh SELECT trong toán tử UNION phải có cùng số cột trong bộ kết quả với kiểu dữ liệu tương ứng.
Cú pháp toán tử UNION
SELECT bieu_thuc1, bieu_thuc2, … bieu_thucn
FROM bang
[WHERE dieu_kien]
UNION
SELECT bieu_thuc1, bieu_thuc2, … bieu_thucn
FROM bang
[WHERE
dieu_kien];
Tên biến hoặc giá trị biến
bieu_thuc1, bieu_thuc2, … bieu_thucn
Cột hoặc giá trị tính toán muốn lấy.
bang
Bảng muốn lấy bản ghi. Phải có ít nhất 1 bảng trong mệnh đề FROM.
WHERE dieu_kien
Tùy chọn. Điều kiện phải đáp ứng để bản ghi được chọn.
Lưu ý:
- 2 lệnh SELECT phải có cùng số biểu thức
- Số cột tương ứng trong mỗi lệnh SELECT phải có cùng kiểu dữ liệu
- Toán tử UNION xóa các hàng trùng nhau.
- Xem thêm toán tử UNION ALL.
Ví dụ - trả về một trường thông tin
Ví dụ toán tử UNION trả về 1 trường từ nhiều lệnh SELECT (và các trường có cùng kiểu dữ liệu).
SELECT sanpham_id
FROM sanpham
UNION
SELECT sanpham_id
FROM hangtonkho;
Ở ví dụ trên, nếu có sanpham_id nào xuất hiện ở cả bảng sanpham và hangtonkho, thì sẽ chỉ còn 1 sanpham_id xuất hiện trong bộ kết quả. Nếu không muốn loại bỏ bản ghi trùng, hãy dùng toán tử UNION ALL.
Ví dụ - dùng ORDER BY
Toán tử UNION có thể dùng mệnh đề ORDER BY để sắp xếp kết quả truy vấn.
SELECT danhba_id, danhba_ten
FROM danhba
WHERE ten_trang = ‘QuanTriMang.com’
UNION
SELECT congty_id, congty_ten
FROM congty
WHERE ten_trang = ‘TrangCuaBan.com’
ORDER B
Y 2;
Ở ví dụ này, vì tên cột ở 2 lệnh SELECT khác nhau nên sẽ dễ hơn khi tham chiếu tới cột trong lệnh ORDER BY bằng vị trí trong bộ kết quả. Trong ví dụ trên, ta lọc kết quả theo danhba_ten / congty_ten theo thứ tự tăng dần, như đã nói bằng cụm từ ORDER BY 2.
danhba_ten / congty_ten nằm ở vị trí thứ 2 trong bộ kết quả.
Bài trước: Lệnh DELETE TOP trong SQL Server
Bài sau: Toán tử UNION ALL trong SQL Server

-
Cách chèn GIF vào Word và chỉnh sửa mô tả ảnh
-
Microsoft đang cập nhật cho Windows 10 nhiều tính năng cài đặt cá nhân hóa mới khá ‘hay ho'
-
Microsoft Edge sắp được bổ sung một tính năng bảo mật mới cực hữu ích
-
Hacker lạm dụng LinkedIn để thực hiện chiến dịch tấn công lừa đảo quy mô lớn
-
4 cách chặn quảng cáo trên iPhone tốt nhất
-
Top chiếu phim tháng 4/2021 không nên bỏ lỡ
-
SQL Server Management Studio 18.7 có gì mới?
-
Hàm SYSTEM_USER trong SQL Server
-
Hàm USER_NAME trong SQL Server
-
Cách tạo cơ sở dữ liệu trong MS SQL Server
-
Cách chọn cơ sở dữ liệu trong MS SQL Server
-
Quản lý MS SQL Server bằng Management Studio
-
Hàm SUBSTRING trong SQL Server
-
Hàm LEN trong SQL Server
-
Hàm CONVERT trong SQL Server