Trong hướng dẫn này, bạn sẽ tìm hiểu cách sử dụng EXCEPT
trong SQL Server để loại trừ tập kết quả của một truy vấn ra khỏi tập kết quả của một truy vấn khác.
Toán tử EXCEPT
trong SQL Server so sánh tập hợp kết quả của hai truy vấn và trả về các bản ghi của truy vấn thứ nhất không xuất hiện trong các bản ghi của truy vấn thứ hai.
Nói cách khác, hàm EXCEPT
loại trừ tập kết quả của một truy vấn từ một truy vấn khác.
Sau đây là cú pháp của EXCEPT
trong SQL Server:
query_1
EXCEPT
query_2
Sau đây là các quy tắc để kết hợp tập kết quả của hai truy vấn theo cú pháp trên:
Hình sau cho thấy cách EXCEPT
xử lý hai tập kết quả T1 và T2:
Trong hình minh họa này:
except
của T1 và T2 trả về 1, là bản ghi khác biệt với tập kết quả T1 không xuất hiện trong tập kết quả T2.
Xem bảng products
và order_items
trong cơ sở dữ liệu mẫu BikeStores.
EXCEPT
đơn giảnVí dụ sau sử dụng toán tử EXCEPT
để tìm các sản phẩm không có doanh số:
SELECT
product_id
FROM
production.products
EXCEPT
SELECT
product_id
FROM
sales.order_items;
Trong ví dụ này, truy vấn đầu tiên trả về tất cả các sản phẩm. Truy vấn thứ hai trả về các sản phẩm có doanh số bán hàng. Do đó, tập hợp kết quả chỉ bao gồm các sản phẩm không có doanh số.
EXCEPT
với mệnh đề ORDER BY
trong SQL ServerĐể sắp xếp tập hợp kết quả được tạo bởi toán tử EXCEPT
, bạn thêm mệnh đề ORDER BY
trong truy vấn cuối cùng. Ví dụ: ví dụ sau tìm các sản phẩm không có doanh số bán hàng và sắp xếp các sản phẩm theo thứ tự tăng dần theo id của chúng:
SELECT
product_id
FROM
production.products
EXCEPT
SELECT
product_id
FROM
sales.order_items
ORDER BY
product_id;
Trong hướng dẫn này, bạn đã tìm hiểu cách sử dụng toán tử EXCEPT
trong SQL Server để loại trừ tập kết quả của một truy vấn ra khỏi tập kết quả của một truy vấn khác.
Bạn có thể vui lòng tắt trình chặn quảng cáo ❤️ để hỗ trợ chúng tôi duy trì hoạt động của trang web.
Trong hướng dẫn này, bạn sẽ tìm hiểu về GUID trong SQL Server và cách sử dụng hàm NEWID() để tạo giá trị GUID.
Trong hướng dẫn này, bạn sẽ học cách sử dụng kiểu dữ liệu DATETIMEOFFSET trong SQL Server để thao tác datetime với múi giờ.
Trong hướng dẫn này, bạn sẽ học cách lưu trữ thời gian trong ngày trong cơ sở dữ liệu bằng cách sử dụng kiểu dữ liệu TIME trong SQL Server.
Trong hướng dẫn này, bạn sẽ học cách sử dụng kiểu dữ liệu DATE trong SQL Server để lưu trữ dữ liệu ngày tháng trong một bảng.