Operator INTERSECT określa część wspólna zbiorów. Używając tego operatora uzyskamy wiersze wspólne dla wszystkich łączonych tabel wymienionych w klauzuli SELECT.
Relacyjne bazy danych umożliwiają działania na zbiorach SQL Oracle. Bazy danych składają się z rekordów, które podlegają grupowaniu, segregowaniu, wydzielaniu i szukaniu części wspólnych.
Prowadząc działania na zbiorach SQL wykorzystuje się operatory teoriomnogościowe.
Skorzystamy z tabel EMPLOYEES, JOBS z bezpłatnej bazy Oracle HR dostępnej tutaj:
http://www.oracle.com/technetwork/database/express-edition/downloads/index.html
Instrukcja INTERSECT
Spróbujmy znaleźć wspólne wartości dla tabel EMPLOYEES (SALARY), JOBS (MIN_SALARY) stosując operator INTERSECT
SELECT SALARY
FROM EMPLOYEES
INTERSECT
SELECT MIN_SALARY
FROM JOBS;
Otrzymujemy tabelę wynikową:
Spróbujmy teraz wyświetlić kody departamentów znajdujące się w tabelach JOB_HISTORY oraz DEPARTMENTS.
SELECT DEPARTMENT_ID
FROM DEPARTMENTS
INTERSECT
SELECT DEPARTMENT_ID
FROM JOB_HISTORY;
Otrzymujemy tabelę wynikową:
Operator INTERSECT wyodrębnił część wspólną tabel JOB_HISTORY oraz DEPARTMENTS.



