wtorek, 11 kwietnia 2017

Lekcja 18. Podzapytania wielowierszowe

Podzapytanie wielowierszowe
Podzapytania wielowierszowe zwracają jeden wiersz lub kilka wierszy do zapytania zewnętrznego. Zapytanie zewnętrzne możne obsługiwać podzapytania zwracające wiele wierszy za pomocą operatorów IN, ANY, SOME oraz ALL. Możemy użyć tych operatorów do sprawdzenia, czy wartość z kolumny znajduje się na liście wartości.

Użycie operatora IN z podzapytaniem wielowierszowym
Operator IN pozwala sprawdzić, czy wartość znajduje się na konkretnej liście wartości, która jest wynikiem zwróconym przez podzapytanie. Możemy również wykonać logiczne zaprzeczenie IN, stosując operator NOT IN, co pozwala sprawdzić, czy wartość nie znajduje się na określonej liście wartości. W poniższym przykładnie użyto operatora IN do sprawdzenia, czy emp_no znajduje się na liście wartości zwróconej przez podzapytanie. Zwraca ono wartości emp_no pracowników, których imię zaczyna się od litery C:

  

W kolejnym przykładzie użyto operatora NOT IN, aby pobrać dane o pracownikach, którzy nie znajdują się w tabeli employee_project:

 

Użycie operatorów ANY i SOME z podzapytaniem wielowierszowym
Operatory ANY oraz SOME służą do porównywania wartości z którąkolwiek z wartości na liście. Należy przed nimi umieścić operator porównania =, <>, <, >, <= lub >=. W poniższym przykładzie użyto operatora ANY do pobrania pracowników, których wynagrodzenie jest większe od któregokolwiek z maksymalnych wynagrodzeń w poszczególnych krajach w tabeli job_country:



Poniższe zapytanie przestawia ten sam rezultat przy użyciu operatora SOME. Operatory ANY oraz SOME mogą być używane zamiennie.


Użycie operatora ALL z podzapytaniem wielowierszowym
Operatory ALL służy do porównywania wartości z każdą z wartości na liście. Należy przed nimi umieścić operator porównania =, <>, <, >, <= lub >=. W poniższym przykładzie użyto operatora ALL do pobrania pracowników, których wynagrodzenie jest mniejsze od maksymalnych wynagrodzeń w poszczególnych krajach w tabeli job_country:


Brak komentarzy:

Prześlij komentarz