Using The INTERSECT operator – Toán tử INTERSECT trong SQL

Phép toán INTERSECT trong SQL được sử dụng để trả về các hàng mà có trong cả hai tập hợp kết quả của hai câu lệnh SELECT khác nhau. Cụ thể, INTERSECT sẽ trả về các dòng dữ liệu mà xuất hiện ở cả hai tập hợp kết quả của các câu lệnh SELECT.

Using The INTERSECT operator – Toán tử INTERSECT trong SQL

Cú pháp của INTERSECT

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

SELECT column1, column2, ...
FROM table1
INTERSECT
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 và table2 là các bảng hoặc các câu lệnh SELECT mà bạn muốn thực hiện phép INTERSECT.

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

Giả sử bạn có hai bảng Products và FeaturedProducts, và bạn muốn tìm các sản phẩm có trong cả hai bảng. Dưới đây là ví dụ cụ thể:

Bảng Products

product_idproduct_name
1Laptop
2Smartphone
3Tablet
4Headphones
5Monitor

Bảng FeaturedProducts

product_idproduct_name
1Laptop
3Tablet
5Monitor
6Keyboard

Bạn muốn lấy ra các sản phẩm có trong cả hai bảng ProductsFeaturedProducts. Bạn có thể sử dụng INTERSECT như sau:

SELECT product_id, product_name
FROM Products
INTERSECT
SELECT product_id, product_name
FROM FeaturedProducts;

Kết quả sẽ là: (các rows chung kết quả với nhau ở cả 2 table)

product_idproduct_name
1Laptop
3Tablet
5Monitor

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

  1. Các SELECT phải có cùng số lượng cột: Mỗi câu lệnh SELECT trong phép INTERSECT 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. INTERSECT loại bỏ các dòng trùng lặp: Kết quả của INTERSECT sẽ bao gồm các hàng duy nhất mà có trong cả hai tập hợp kết quả.
  4. Phép toán INTERSECT chỉ hoạt động cho các hàng duy nhất: Nếu có các dòng trùng lặp trong một trong hai bảng, phép toán INTERSECT sẽ xem xét mỗi hàng như là một dòng duy nhất.

Túm lại nhé:

Phép toán INTERSECT trong SQL là một cách mạnh mẽ để tìm các dòng dữ liệu chung giữa hai tập hợp kết quả khác nhau từ các câu lệnh SELECT. Nó hữu ích khi bạn cần tìm ra các bản ghi có trong cả hai bảng hoặc tìm sự tương đồng giữa các tập dữ liệu khác nhau. Hãy đảm bảo rằng các câu lệnh SELECT trong phép INTERSECT 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ả.

 

Datalinks.vn

Hello các bạn, tôi là Dương Nguyễn (DuoDBA - https://www.youtube.com/@DuoDBA) tác giả của blog này. Mong muốn được chia sẻ kiến thức và kinh nghiệm về cơ sở dữ liệu với những người đam mê và quan tâm đến lĩnh vực này. Tôi có tổ chức các khoá Coaching về #OracleDatabase và luyện thi #OCP thường xuyên, các bạn muốn có người đồng hành thì alo tôi nhé. Call/Zalo: 0765 871 888. Thanks you !.....
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