Birden çok iç içe geçme düzeyi
A alt sorgu kendini bir veya daha fazla alt sorgular içerebilir.Herhangi bir sayıda alt sorgular bir deyim içinde iç içe olabilir.
Aşağıdaki sorgu aynı zamanda satış kişiler olan çalışanların adlarını bulur.
Use AdventureWorks2008R2;
GO
SELECT LastName, FirstName
FROM Person.Person
WHERE BusinessEntityID IN
(SELECT BusinessEntityID
FROM HumanResources.Employee
WHERE BusinessEntityID IN
(SELECT BusinessEntityID
FROM Sales.SalesPerson)
)
Sonuç kümesi buradadır.
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)
En içteki sorgu satış temsilcisi kimlikleri verir.Sonraki sorgu daha yüksek düzey bu satışçı kimlikleri ile değerlendirilir ve çalışanların kişi kimlik numaralarını döndürür.Son olarak, dış sorgu kişinin kimlikleri çalışanların adlarını bulmak için kullanır.
Ayrıca bu sorguyu birleştirmek ifade edebilirsiniz:
USE AdventureWorks2008R2;
GO
SELECT LastName, FirstName
FROM Person.Person c
INNER JOIN HumanResources.Employee e
ON c.BusinessEntityID = e.BusinessEntityID
JOIN Sales.SalesPerson s
ON e.BusinessEntityID = s.BusinessEntityID