Informacje o nowych artykułach oraz akcjach edukacyjnych prosto na Twojej skrzynce e-mail!

Łączenie wyników zapytań w SQL

Pisząc zapytania SELECT czasami zachodzi potrzeba złączenia pobranych wyników. W SQL mamy do dyspozycji operatory takie jak: suma (UNION), różnica (EXCEPT) oraz cześć wspólną (INTERSECT). Przyjrzyjmy się więc jak je używać…

Suma

Wyniki danego zapytania możemy „dodać” do siebie za pomocą operatora UNION. Działa on na zasadzie dodawania zbiorów. Wyświetlane są więc wszystkie wiersze.

Przykład użycia:

SELECT kol1 FROM tab1
UNION
SELECT kol1 FROM tab2;

Operator UNION powoduje usunięcie z wyniku wszystkich powtórzonych wierszy, można to ominąć stosując w miejsce UNION operator UNION ALL:

SELECT kol1 FROM tab1
UNION ALL
SELECT kol1 FROM tab2;

Powyższy operator możemy oczywiście użyć kilka razy. Dopuszczalny jest między innymi taki zapis:

SELECT kol1 FROM tab1
UNION
SELECT kol1 FROM tab2;
UNION
SELECT kol1 FROM tab3
UNION
SELECT kol1 FROM tab4;

Różnica

Operator EXCEPT zwraca różnicę pobieranych danych. Działa on na zasadzie różnicy zbiorów czyli wyświetla tylko te wiersze które były w pierwszej tabeli, a nie były w drugiej.

SELECT kol1 FROM tab1
EXCEPT
SELECT kol2 FROM tab2;

Część wspólna

Część wspólną możemy uzyskać za pomocą operatora INTERSECT. Zwraca on wiersze które zostały zwrócone przez oba zapytania:

SELECT kol1 FROM tab1
INTERSECT
SELECT kol2 FROM tab2;

Spodobało się?

Jeśli tak, to zarejestruj się do newslettera aby otrzymywać informacje nowych artykułach oraz akcjach edukacyjnych. Gwarantuję 100% satysfakcji i żadnego spamowania!

, , , , , , , ,

Dodaj komentarz

Komentarze (2)

  • Dawid_Pasieka pisze:

    Cześć,
    bardzo doceniam twój wkład w szerzenie darmowych bibliotek wiedzy w internecie.
    Artykuł na +, natomiast jakby były jeszcze przykłady, to już w ogóle byłoby świetnie.

Odpowiedz

Twój adres e-mail nie zostanie opublikowany.

Pin It on Pinterest