Wiele poziomów zagnieżdżanie
Sam podkwerenda mogą zawierać jeden lub więcej podkwerend.Dowolna liczba podkwerendy mogą być zagnieżdżane w instrukcja.
Następująca kwerenda powoduje znalezienie nazwiska pracowników, którzy są również sprzedawców.
Use AdventureWorks;
GO
SELECT LastName, FirstName
FROM Person.Contact
WHERE ContactID IN
(SELECT ContactID
FROM HumanResources.Employee
WHERE EmployeeID IN
(SELECT SalesPersonID
FROM Sales.SalesPerson)
Here is the result set.
LastName FirstName
-------------------------------------------------- -----------------------
Jiang Stephen
Abbas Syed
Alberts Amy
Ansman-Wolfe Pamela
Campbell David
Carson Jillian
Ito Shu
Mitchell Linda
Reiter Tsvi
Saraiva Jos
Vargas Garrett
Varkey Chudukatil Ranjit
Valdez Rachel
Tsoflias Lynn
Pak Jae
Blythe Michael
Mensa-Annan Tete
(17 row(s) affected)
Najbardziej kwerenda zwraca sprzedawcy identyfikatorów.Kwerendy z następnego wyższego poziom sprawdzana jest zgodność z tych Sprzedawca identyfikatorów i zwraca kontaktu numery identyfikacyjne pracowników.Na koniec zewnętrznej kwerendy używa nazwy kontaktu w celu wyszukania nazwiska pracowników.
Ta kwerenda może również przedstawić jako łączyć:
USE AdventureWorks;
GO
SELECT LastName, FirstName
FROM Person.Contact c
INNER JOIN HumanResources.Employee e
ON c.ContactID = e.ContactID
JOIN Sales.SalesPerson s
ON e.EmployeeID = s.SalesPersonID