Как просмотреть данные столбца на основе данных другого столбца в той же таблице? - PullRequest
1 голос
/ 05 июля 2019

SQL> выберите employeeid, fname, заработную плату, руководителя из сотрудника;

EMPLOYEEID FNAME               SALARY SUPERVISOR
---------- --------------- ---------- ----------
       111 Heng                265000
       246 Ananda              150000        111
       231 Nagapan              85000        246
       123 Vellu               105000        111
       443 Fatimah              80000        111
       433 Amin                 66500        443
       323 Kamuingat            76500        443
       200 Jing                 24500        135
       135 Hong                 45000        111
       322 Derek                75000        123
       128 Dong                 38000        135
       248 Fatt                 30000        135

Я хочу, чтобы в качестве имени супервизора отображался столбец супервизора. имя уже существует в имени. Как сделать просмотр имени супервизора на основе идентификатора в столбце employeeid?

Ответы [ 2 ]

1 голос
/ 05 июля 2019

Вы, вероятно, хотите что-то вроде этого:

select e.employeeid, e.fname, e.salary, s.fname
from employee e join employee s on (e.supervisor = s.employeeid)

Вы присоединяете таблицу сотрудников к себе, используя столбец supervisor в качестве столбца id. Если это не имеет смысла, ищите соединения в документах.

0 голосов
/ 05 июля 2019

Я думаю, что вам нужно self join using outer join, иначе первая запись, в которой супервизор имеет значение NULL, будет исключена из результата.

Так что я думаю, что следующий запрос, который вы должны попробовать:

select e.employeeid, e.fname, e.salary, s.fname
from employee e left join employee s on (e.supervisor = s.employeeid)

Обратите внимание, что я сделал оставил присоединиться .

Ура !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...