Thứ Năm, Tháng Bảy 7, 2022
HomeWikiToán tử UNION trong SQL

Toán tử UNION trong SQL

Hạn chế lớn nhất của câu lệnh SELECT có lẽ rằng là việc chỉ hoàn toàn có thể lấy một hoặc nhiều cột từ một bảng duy nhất. Tuy nhiên, chỉ với một từ khóa UNION, bạn trọn vẹn hoàn toàn có thể đổi khác điều này .

1. Ý nghĩa của UNION

Toán tử UNION được sử dụng để tích hợp tập hợp hiệu quả của hai hoặc nhiều câu lệnh SELECT. Mỗi câu lệnh SELECT với UNION phải có cùng số lượng cột, những cột phải có cùng kiểu tài liệu, những cột trong mỗi câu lệnh SELECT phải có cùng trật tự .

  • Cú pháp của UNION:

SELECT tên cột FROM bảng1

UNION

Bạn đang đọc: Toán tử UNION trong SQL

SELECT tên cột FROM bảng2

  • Cú pháp của UNION ALL:

SELECT tên cột FROM bảng1
UNION ALL
SELECT tên cột FROM bảng2

Lưu ý: Tên cột trong tập kết quả thường bằng tên cột trong câu lệnh SELECT đầu tiên.

2. Ví dụ UNION

Để thực thi ví dụ này, bạn cần nhập cơ sở tài liệu mẫu Northwind vào SQL Server Management Studio. Hãy xem bài viết hướng dẫn ngay dưới đây :

Tham khảo: Hướng dẫn tải và cài đặt dữ liệu mẫu Northwind trong SQL Server Management Studio

Câu lệnh SQL dưới đây sẽ lấy ra những thành phố ( chỉ giá trị khác nhau ) từ bảng Customers và Suppliers :
SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER BY City ;

Lưu ý: Nếu một vài khách hàng hoặc nhà cung cấp có cùng thành phố, mỗi thành phố sẽ chỉ được liệt kê một lần, bởi vì toán tử UNION chỉ lấy các giá trị khác nhau. Để lấy tất cả giá trị, bao gồm cả những giá trị trùng lặp hãy sử dụng UNION ALL.

3. Ví dụ UNION ALL

Câu lệnh SQL dưới đây sẽ lấy ra những thành phố ( gồm có cả giá trị trùng lặp ) từ bảng Customers và Suppliers :
SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City ;

Kết quả lúc này đã mở màn Open những giá trị giống nhau .

4. UNION với mệnh đề WHERE

Câu lệnh SQL dưới đây sẽ lấy ra những thành phố của nước Đức ( Country = ‘ Germany ‘ ) và chỉ giá trị khác nhau từ bảng Customers và Suppliers :
SELECT City, Country FROM Customers
WHERE Country = ‘ Germany ‘
UNION
SELECT City, Country FROM Suppliers

WHERE Country=’Germany’

ORDER BY City ;

5. UNION ALL với mệnh đề WHERE

Câu lệnh SQL dưới đây sẽ lấy ra những thành phố của nước Đức ( Country = ‘ Germany ‘ ) và gồm có cả giá trị trùng lặp từ bảng Customers và Suppliers :
SELECT City, Country FROM Customers
WHERE Country = ‘ Germany ‘
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country = ‘ Germany ‘
ORDER BY City ;

Kết quả là ở cột City đã có giá trị giống nhau Open .

6. Ví dụ UNION khác

Câu lệnh dưới đây sẽ liệt kê toàn bộ người mua và nhà cung ứng :
SELECT ‘ Customer ‘ AS Type, ContactName, City, Country
FROM Customers
UNION
SELECT ‘ Supplier ‘, ContactName, City, Country
FROM Suppliers ;

“ AS Type ” truy vấn trên là một bí danh, nó cung ứng một cái tên trong thời điểm tạm thời cho cột trong truy vấn và sống sót trong suốt truy vấn. Vì thế, tất cả chúng ta đã tạo ra một cột có tên là “ Type ” để liệt kê thông tin liên hệ là “ Customer ” hay “ Supplier ” .

Tham khảo: Bí danh trong SQL

Như vậy là tất cả chúng ta đã đi qua những ví dụ về toán tử UNION, giờ đây, những bạn hoàn toàn có thể lấy nhiều cột tài liệu từ những bảng khác nhau trong cùng một truy vấn. Trong những nội dung tiếp theo, tất cả chúng ta sẽ liên tục với những hàm và toán tử còn lại trong SQL, đừng quên đón đọc tại BAC’s Blog .

Nguồn tham khảo:
https://www.w3schools.com/

Nhu cầu huấn luyện và đào tạo doanh nghiệp
BAC là đơn vị chức năng huấn luyện và đào tạo BA tiên phong tại Nước Ta. Đối tác chính thức của IIBA quốc tế. Ngoài những khóa học public, BAC còn có những khóa học in house dành riêng cho từng doanh nghiệp. Chương trình được phong cách thiết kế riêng theo nhu yếu của doanh nghiệp, giúp doanh nghiệp xử lý những khó khăn vất vả và tư vấn tăng trưởng .

Tham khảo chương trình đào tạo và giảng dạy :

BAC – Biên soạn và tổng hợp nội dung

Source: https://entechgadget.com
Category: Wiki

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Bài viết hay nhất

DANH MỤC WEBSITE