Сотрудник И менеджер - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть данные с: EMPID, NAME, MANAGER_ID

Like this

Мне нужно вернуть: EMPID, NAME, COLLEAGUE_ID

COLLEAGUE_ID будет список людей стот же менеджер, что и человек в EMP_ID

Like this

Любая помощь будет отличной. Даже если это просто название типа функции, мне нужно это сделать.

1 Ответ

1 голос
/ 01 ноября 2019

Это звучит в основном как cross join. Но поскольку менеджеры не включены в вашу таблицу, вам также необходимо union all:

select t1.emp_id, t1.name, t2.emp_id as colleague
from t t1 join
     t t2
     on t1.manager = t2.manager and t1.emp_id <> t2.emp_id
union all
select t1.emp_id, t1.name, t1.manager
from t;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...