Я пытаюсь выяснить, сколько отчетов каждый менеджер имеет в организации, но не может заставить его работать для меня.Найти всех детей для каждого родителя
Ниже приведен пример набора данных - все это в пределах одной таблицы, а каждая строка имеет менеджер, за исключением первого, который в верхней части дерева:
ID Manager
1 NULL
2 1
3 2
4 3
5 3
6 5
7 5
8 5
9 5
10 3
мне нужен результат, чтобы выйти, как:
Manager Count
1 1
2 1
3 3
5 4
Это то, что я до сих пор, но это не дает мне то, что мне нужно:
select e1.manager, count(e3.id) as emp_count
from employee as e2
left outer
join employee as e1
on e1.manager = e2.id
left outer
join employee as e3
on e3.manager = e1.id
group
by e1.manager
Я взял пример я нашел в Интернете и попытался изменить его для моих требований - родитель/ребенок, вероятно, не правильный способ определить это, но я был думая, что каждый менеджер является родителем, а их отчеты - это дети. В любом случае это работает так благодарно – bhttoan
Просто, чтобы вы знали, когда мы говорим «родитель/ребенок», мы обычно ссылаемся на вложенные отношения, например, когда менеджеры имеют менеджеров менеджеров. – miyasudokoro