W wyniku działania operatora Except otrzymasz wynik tylko i wyłącznie z lewej (pierwszej) tabeli (A). Klauzule Select pomiędzy Except mogą być bardzo złożone, możesz wykorzystać np. Join, aby jak najbardziej ograniczyć wyniki zapytania.

Nieco Teorii…

Szablon użycia operatora Except jest stosunkowo proste, musisz użyć dwóch klauzul Select a pomiędzy nimi operator Except.

Musisz pamiętać o dwóch wymaganiach co do składowych zapytania:

  • Liczba kolumn i ich zamówień musi być taka sama w dwóch zapytaniach.
  • Typy danych odpowiednich kolumn muszą być kompatybilne.

Przykłady, Przykłady…

Załóżmy, że chcesz wyświetlić filmy, których nie ma w tabeli inventory.

Na początek wyświetl id każdego filmu oraz jego tytuł.

Kolejnym krokiem będzie wyświetlenie filmów, które należą do tabeli inventory, tzn. czy film_id znajduje się w niej. Dla zachowania porządku pomiń powtarzające się wyniki (distinct).

Połączenie powyższych zapytań przy pomocy klauzuli except, spowoduje otrzymanie wyniku dokładanie odwrotnego, czyli pokaże filmy, których nie ma w tabeli inventory.

W kolejnym wpisie przedstawię informacje w jaki sposób utworzyć podzapytanie(subquery).

Dodaj komentarz

Twój adres email nie zostanie opublikowany.

Droga Administratora IT.