MỞ ĐẦU
ORACLE TABLE
ORACLE QUERY
ORACLE CONDITION
ORACLE CLAUSES
ORACLE OPERATORS
ORACLE JOINS
ORACLE REFERENCE
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
Dự án mới của mình là gamehow.net, mời anh em ghé thăm và góp ý ạ.

Toán tử INTERSECT trong Oracle

Trong Oracle, toán tử INTERSECT có tác dụng ngược lại với toán tử UNION, nghĩa là nó dùng để gộp hai câu lệnh SELECT lại với nhau và chọn ra những record có dữ liệu trùng nhau, nghĩa là record nào ở A mà xuất hiện ở B nữa thì mới được chọn. 

Toán tử này ta gọi là toán tử hợp.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

1. Cú pháp toán tử INTERSECT trong Oracle

Toán tử INTERSECT sẽ đặt giữa hai câu lệnh SELECT.

SELECT expression1, expression2, ... expression_n  
FROM table1  
WHERE conditions  
INTERSECT  
SELECT expression1, expression2, ... expression_n  
FROM table2  
WHERE conditions;  

Các tham số quá quen thuộc với bạn rồi nên mình sẽ không giải thích gì thêm.

Ví dụ
SELECT name
FROM students

INTERSECT

SELECT name
FROM score

2. Ví dụ INTERSECT đơn giản

Giả sử mình có bảng Suppliers và bảng Order_details như sau:

Bảng Suppliers:

oracle intersect2 png

Bảng Order_details:

oracle intersect4 png

Mình sẽ viết câu truy vấn như sau:

SELECT supplier_id  
FROM suppliers  
INTERSECT  
SELECT supplier_id  
FROM order_details;

Nhìn vào câu truy vấn ta sẽ thấy kết quả trả về sẽ gồm những record supplier_id giống nhau.

intersect1 png

3. Ví dụ INTERSECT có WHERE

Giả sử mình có hai bảng như sau:

Bảng  Supplier:

oracle intersect6 png

Bảng Customer:

oracle intersect8 png

Mình sẽ lọc điều kiện như sau:

  • Ở bảng Supplier có firstname khác "dhirubhai"
  • Ở bảng Customer có customer_id < 5

SELECT supplier_id, last_name, first_name  
FROM supplier  
WHERE first_name <> 'dhirubhai'  
INTERSECT  
SELECT customer_id, last_name, first_name  
FROM customer 
WHERE customer_id < 5; 

Kế quả:

oracle intersect9 png

4. Lời kết

Như vậy là mình đã giới thiệu xong cách sử dụng toán tử INTERSECT trong Oracle, cách sử dụng khá đơn giản, bạn cứ liên tưởng tới toán tử hợp trong toán học. Bài tiếp theo chúng ta sẽ học toán tử MINUS.

Cùng chuyên mục:

Hàm Hàm ASCII trong Oracle

Hàm Hàm ASCII trong Oracle

Cách sử dụng hàm Hàm ASCII trong 150

Hàm Hàm ASCIISTR trong Oracle

Hàm Hàm ASCIISTR trong Oracle

Cách sử dụng hàm Hàm ASCIISTR trong 150

Hàm Hàm CHR trong Oracle

Hàm Hàm CHR trong Oracle

Cách sử dụng hàm Hàm CHR trong 150

Hàm Hàm COMPOSE trong Oracle

Hàm Hàm COMPOSE trong Oracle

Cách sử dụng hàm Hàm COMPOSE trong 150

Hàm Hàm CONCAT trong Oracle

Hàm Hàm CONCAT trong Oracle

Cách sử dụng hàm Hàm CONCAT trong 150

Hàm Hàm CONVERT trong Oracle

Hàm Hàm CONVERT trong Oracle

Cách sử dụng hàm Hàm CONVERT trong 150

Hàm Hàm DECOMPOSE trong Oracle

Hàm Hàm DECOMPOSE trong Oracle

Cách sử dụng hàm Hàm DECOMPOSE trong 150

Hàm Hàm DUM trong Oracle

Hàm Hàm DUM trong Oracle

Cách sử dụng hàm Hàm DUM trong 150

Hàm Hàm INITCAP trong Oracle

Hàm Hàm INITCAP trong Oracle

Cách sử dụng hàm Hàm INITCAP trong 150

Hàm Hàm INSTR trong Oracle

Hàm Hàm INSTR trong Oracle

Cách sử dụng hàm Hàm INSTR trong 150

Hàm Hàm INSTR2 trong Oracle

Hàm Hàm INSTR2 trong Oracle

Cách sử dụng hàm Hàm INSTR2 trong 150

Hàm Hàm INSTR4 trong Oracle

Hàm Hàm INSTR4 trong Oracle

Cách sử dụng hàm Hàm INSTR4 trong 150

Hàm Hàm INSTRB trong Oracle

Hàm Hàm INSTRB trong Oracle

Cách sử dụng hàm Hàm INSTRB trong 150

Hàm Hàm INSTRC trong Oracle

Hàm Hàm INSTRC trong Oracle

Cách sử dụng hàm Hàm INSTRC trong 150

Hàm Hàm LENGTH trong Oracle

Hàm Hàm LENGTH trong Oracle

Cách sử dụng hàm Hàm LENGTH trong 150

Hàm Hàm LENGTH2 trong Oracle

Hàm Hàm LENGTH2 trong Oracle

Cách sử dụng hàm Hàm LENGTH2 trong 150

Hàm Hàm LOWER trong Oracle

Hàm Hàm LOWER trong Oracle

Cách sử dụng hàm Hàm LOWER trong 150

Hàm Hàm LPAD trong Oracle

Hàm Hàm LPAD trong Oracle

Cách sử dụng hàm Hàm LPAD trong 150

Hàm Hàm LTRIM trong Oracle

Hàm Hàm LTRIM trong Oracle

Cách sử dụng hàm Hàm LTRIM trong 150

Hàm Hàm NCHR trong Oracle

Hàm Hàm NCHR trong Oracle

Cách sử dụng hàm Hàm NCHR trong 150

Top