Using The MINUS operator – Sử dụng toán tử MINUS trong SQL

Phép toán MINUS trong SQL được sử dụng để trả về các hàng dữ liệu có trong tập kết quả của câu lệnh SELECT đầu tiên mà không có trong tập kết quả của câu lệnh SELECT thứ hai. Nó tương tự như phép toán EXCEPT trong một số hệ quản trị cơ sở dữ liệu khác.

Using The MINUS operator – Sử dụng toán tử MINUS trong SQL

Cú pháp của MINUS

Cú pháp chung để sử dụng MINUS trong SQL là:

SELECT column1, column2, ...
FROM table1
MINUS
SELECT column1, column2, ...
FROM table2;

Trong đó:

  • SELECT column1, column2, … là các cột mà bạn muốn chọn từ các bảng hoặc các điều kiện.
  • table1 là bảng hoặc câu lệnh SELECT đầu tiên.
  • table2 là bảng hoặc câu lệnh SELECT thứ hai.

Ví dụ về sử dụng MINUS

Giả sử bạn có hai bảng OldProducts và NewProducts, và bạn muốn tìm các sản phẩm đã bị ngừng bán từ bảng OldProducts (các sản phẩm không có trong bảng NewProducts). Dưới đây là ví dụ cụ thể:

Bảng OldProducts

product_idproduct_name
1Laptop
2Smartphone
3Tablet
4Headphones
5Monitor

Bảng NewProducts

product_idproduct_name
1Laptop
3Tablet
5Monitor
6Keyboard

Bạn muốn lấy ra các sản phẩm từ bảng OldProducts mà không có trong bảng NewProducts. Bạn có thể sử dụng MINUS như sau:

SELECT product_id, product_name
FROM OldProducts
MINUS
SELECT product_id, product_name
FROM NewProducts;

Kết quả sẽ là:

product_idproduct_name
2Smartphone
4Headphones

Điều kiện và lưu ý khi sử dụng MINUS

  1. Các SELECT phải có cùng số lượng cột: Mỗi câu lệnh SELECT trong phép MINUS phải trả về cùng số lượng cột với cùng kiểu dữ liệu hoặc có thể chuyển đổi ngầm định.
  2. Các cột phải có cùng kiểu dữ liệu hoặc có thể chuyển đổi: Các cột được chọn từ các câu lệnh SELECT phải có cùng kiểu dữ liệu hoặc có thể chuyển đổi ngầm định.
  3. Phép toán MINUS loại bỏ các dòng trùng lặp: Kết quả của MINUS sẽ bao gồm các hàng duy nhất mà có trong tập kết quả của câu lệnh SELECT đầu tiên mà không có trong tập kết quả của câu lệnh SELECT thứ hai.
  4. Phép toán MINUS không hỗ trợ trong một số hệ quản trị cơ sở dữ liệu: Mặc dù phép toán MINUS phổ biến trong SQL, một số hệ quản trị cơ sở dữ liệu nhất định như SQL Server thay thế nó bằng phép toán EXCEPT.

Tóm lại:

Phép toán MINUS trong SQL là một công cụ mạnh mẽ để tìm các hàng dữ liệu mà có trong tập kết quả của câu lệnh SELECT đầu tiên mà không có trong tập kết quả của câu lệnh SELECT thứ hai. Nó hữu ích khi bạn cần tìm ra sự khác biệt hoặc những gì đã bị loại bỏ giữa hai tập dữ liệu. Hãy đảm bảo rằng các câu lệnh SELECT trong phép MINUS của bạn phù hợp về cả cấu trúc cột và kiểu dữ liệu để tránh lỗi và đảm bảo tính chính xác của kết quả.

 

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest

0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận