Like & Share on Facebook
TROLY-EXCEL EXCEL-SQL EXCEL-OUTLOOK-VBA

Toán tử UNION

Toán tử UNION được sử dụng để kết nối 2 hay nhiều kết quả của câu lệnh truy vấn.

  • Mỗi câu lệnh truy vấn khi thực hiện UNION, phải có số lượng cột truy vấn bằng nhau.
  • Các cột truy vấn phải có cùng kiểu dữ liệu và có trình tự truy vấn cột giống nhau.

Cú pháp UNION ALL

Theo mặc định toán tử UNION truy vấn các giá trị và cho kết quả không bị trùng lặp. Nếu cho phép kết quả trùng lặp thì ta sử dụng UNION ALL:

SELECT column_name(s) FROM [sheet_name$]
UNION ALL
SELECT column_name(s) FROM [sheet_name$];

Ghi chú:Tên cột trong tập kết quả sẽ giống tên cột trong câu lệnh truy vấn đầu tiên khi dùng UNION.

Cơ sở dữ liệu(CSDL) mẫu

Hình bên dưới chứa thông tin mẫu danh sách khách hàng bạn đang có, đây là file Excel đặt tên file là "Customers.xlsx", lưu tại vị trí bất kỳ trên máy tính.

Customers


Cơ sở dữ liệu(CSDL) mẫu

Hình bên dưới chứa thông tin mẫu danh sách nhà cung cấp hiện đang hợp tác, đây là file Excel đặt tên file là "Suppliers.xlsx", lưu tại vị trí bất kỳ trên máy tính.

Suppliers


Ví dụ UNION

Câu lệnh sau truy vấn tất cả thành phố khác nhau (không lấy giá trị trùng lặp) trong Sheet1 của file "Customers.xlsx" và "Suppliers.xlsx":

Ví dụ

SELECT City FROM `c:\troly-excel\Customers.xlsx`.[Sheet1$]
UNION
SELECT City FROM `c:\troly-excel\Suppliers.xlsx`.[Sheet1$]
ORDER BY City;

Xem kết quả »

×

Ghi chú: Nếu một vài khách hàng hoặc nhà cung cấp có cùng thành phố thì mỗi thành phố chỉ xuất hiện 1 lần, bởi vì UNION truy vấn giá trị không trùng lặp. Hãy dùng UNION ALL để truy vấn giá trị có trùng lặp.


Ví dụ UNION ALL

Câu lệnh sau truy vấn tất cả thành phố (lấy giá trị trùng lặp) nằm trong file "Customers.xlsx" và "Suppliers.xlsx":

Ví dụ

SELECT City FROM `c:\troly-excel\Customers.xlsx`.[Sheet1$]
UNION ALL
SELECT City FROM `c:\troly-excel\Suppliers.xlsx`.[Sheet1$]
ORDER BY City;

Xem kết quả »

×


UNION kết hợp WHERE

Câu lệnh sau truy vấn tất cả các thành phố khác nhau trong nước Đức (không lấy giá trị trùng lặp) trong Sheet1 file "Customers.xlsx" và "Supplier.xlsx":

Ví dụ

SELECT City, Country FROM `c:\troly-excel\Customers.xlsx`.[Sheet1$]
WHERE Country='Germany'
UNION
SELECT City, Country FROM `c:\troly-excel\Suppliers.xlsx`.[Sheet1$]
WHERE Country='Germany'
ORDER BY City;

Xem kết quả »

×


UNION ALL kết hợp WHERE

Câu lệnh sau truy vấn tất cả thành phố trong nước Đức (bao gồm các giá trị trùng lặp) trong Sheet1 file "Customers.xlsx" và "Suppliers.xlsx":

Ví dụ

SELECT City, Country FROM `c:\troly-excel\Customers.xlsx`.[Sheet1$]
WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM `c:\troly-excel\Suppliers.xlsx`.[Sheet1$]
WHERE Country='Germany'
ORDER BY City;

Xem kết quả »

×


Một ví dụ khác sử dụng UNION

Câu lệnh sau truy vấn tất cả khách hàng và nhà cung cấp hiện đang có trong Sheet1 file "Customers.xlsx" và "Suppliers.xlsx":

Example

SELECT 'Customer' As Type, ContactName, City, Country
FROM `c:\troly-excel\Customers.xlsx`.[Sheet1$]
UNION
SELECT 'Supplier', ContactName, City, Country
FROM `c:\troly-excel\Suppliers.xlsx`.[Sheet1$];

Xem kết quả »

×


❮ Bài trước

Bài tiếp theo ❯



Nếu cần trợ giúp? Hãy gửi email tới phucey@gmail.com hoặc chat với tôi!