Quantcast
Channel: SQL.ru: Microsoft SQL Server
Viewing all articles
Browse latest Browse all 7251

Помощь с запросом

$
0
0
Подскажите необходимо сосчитать количество людей в подчинение и вывести их список. Employees.ReportsTo указывает на id, того кому этот человек подчиняется. Не понимаю как посчитать количество людей в подчинение. В настоящий момент выдаёт нули в последних двух столбцах

Select
Employees.LastName,
Employees.FirstName,
Region.RegionDescription,
count(case when Employees.ReportsTo=Employees.EmployeeID then 1 end) as Count_of_employees,
Subordinates = STUFF((
          SELECT ', ' + Employees.LastName
          FROM Employees
          WHERE Employees.ReportsTo = Employees.EmployeeID
          FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '')
from Employees 
left join EmployeeTerritories on 
Employees.EmployeeID=EmployeeTerritories.EmployeeID
left join Territories on 
EmployeeTerritories.TerritoryID=Territories.TerritoryID
left join Region on Territories.RegionID=Region.RegionID
group by Region.RegionDescription,Employees.LastName, Employees.FirstName

Viewing all articles
Browse latest Browse all 7251

Trending Articles