SQL включается из одного столбца таблицы - PullRequest
0 голосов
/ 08 октября 2018

Имеют две таблицы

  • сотрудников: идентификатор сотрудника, идентификатор сотрудника, идентификатор менеджера, идентификатор отдела
  • отделы: идентификатор отдела, идентификатор менеджера

Мне нужно показать идентификатор сотрудника, имя сотрудника, имя менеджера и идентификатор менеджера, но я не могу понять, как показать имя менеджера.Вот что у меня есть, хотя это очень неправильно и не показывает настоящее имя менеджера

SELECT e.last_name "Employee", e.employee_id "Emp#", e.last_name "Manager",      
       d.manager_id "Mgr#"
FROM employees e, 
     departments d;

Ответы [ 2 ]

0 голосов
/ 03 декабря 2018

вы можете выполнить внутреннее соединение по manager_id, чтобы остались только совпадающие строки

 SELECT last_name as "Employee", employee_id as "Emp#", last_name as "Manager", 
   manager_id as "Mgr#"
   FROM employees as e1
   INNER JOIN departments as d2 
   ON e1.manager_id = d2.manager_id;
0 голосов
/ 08 октября 2018

Разобрался с помощью ключевого слова Join - требуется только использование одной таблицы дважды

SELECT e.last_name "Employee", e.employee_id "Emp#", e2.last_name "Manager", 
       e.manager_id "Mgr#"
       FROM employees e
       JOIN employees e2 ON e2.employee_id = e.manager_id;

Или без использования ключевого слова Join / с помощью простого объединения

SELECT e.last_name "Employee", e.employee_id "Emp#", e2.last_name "Manager", 
   e.manager_id "Mgr#"
   FROM employees e, employees e2
   WHERE e2.employee_id = e.manager_id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...