INTERSECT i EXCEPT
Połącz wyniki dwóch zapytań: zostaw wiersze znalezione w obu (INTERSECT) albo tylko w pierwszym (EXCEPT).
Składnia
query1 INTERSECT query2;query1 EXCEPT query2;
- Oba zapytania potrzebują tej samej liczby kolumn, o zgodnych typach.
- Oba usuwają duplikaty. Dodaj ALL, aby je zachować. Oracle nazywa EXCEPT MINUS.
Przykład
SELECT city FROM customers EXCEPT SELECT 'Paris' ORDER BY city;
Każde miasto klientów oprócz Paryża.
Użyte tabele: customers. Wypróbuj to w lekcji poniżej.
Typowe błędy
- EXCEPT nie jest symetryczne: A EXCEPT B różni się od B EXCEPT A.
- Tutaj wartości NULL są traktowane jako równe, inaczej niż w zwykłym porównaniu.