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

Podzapytania: Podzapytania niepowiązane w SQL cz. I

Ćwiczenia

Pobierzmy za pomocą podzapytań informacje o pracownikach, którzy mieszkają w Warszawie:

SELECT imie, nazwisko FROM pracownicy WHERE miasto =
(SELECT miastoZamieszkaniaID FROM miastoZamieszkania WHERE miasto = 'Warszawa');

Wynik powyższego zapytania:

ImieNazwisko
MichałJakubiak

Jak to działa?

Na samym początku zostało uruchomione nasze podzapytanie:

SELECT miastoZamieszkaniaID FROM miastoZamieszkania WHERE miasto = 'Warszawa'

Pobraliśmy tutaj miastoZamieszkaniaID dla „Warszawy” czyli po prostu „2”. Następnie zostało uruchomione zewnętrzne zapytanie dla pobranej wcześniej wartości. Czyli wyglądało to tak:

SELECT imie, nazwisko FROM pracownicy WHERE miasto = (2);

Przejdźmy teraz do kolejnego ćwiczenia.

Wcześniej pobraliśmy informacje o pracownikach mieszkających w Warszawie za pomocą podzapytań. Wyświetliliśmy wtedy imię i nazwisko ale co zrobić, jeżeli będziemy potrzebowali jeszcze nazwę miasta?

Oczywiście aby rozwiązać ten problem również można wykorzystać podzapytania:

SELECT imie, nazwisko, 
(SELECT miasto FROM miastoZamieszkania WHERE miasto = 'Warszawa') AS Miasto
FROM pracownicy WHERE miasto =
(SELECT miastoZamieszkaniaID FROM miastoZamieszkania WHERE miasto = 'Warszawa');

Rezultat:

ImieNazwiskoMiasto
MichałJakubiakWarszawa

Jak widać na powyższym przykładzie podzapytania mogą być również wywoływane w klauzuli SELECT.

Podzapytania mogą być częścią wyrażeń arytmetycznych:

SELECT dataDzisiejsza - (SELECT dataUrodzenia FROM pracownicy WHERE ID = 2) WHERE ID = 2;

Można je również dowolnie zagnieżdżać.

Strony: 1 2

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

Odpowiedz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Pin It on Pinterest