Подзапросы SQL на сотрудника База данных: перечислите руководителей, зарплата которых превышает среднюю зарплату его сотрудников
Подзапросы SQL к базе данных сотрудника: упражнение 35 с решением
[ Внизу страницы доступен редактор для написания и выполнения сценариев. ]
35. Напишите запрос в SQL, чтобы перечислить руководителей, зарплата которых превышает среднюю зарплату его сотрудников.
Пример таблицы : сотрудники
Пример решения:
SELECT *
FROM employees m
WHERE m.emp_id IN
(SELECT manager_id
FROM employees)
AND m.salary >
(SELECT avg(e.salary)
FROM employees e
WHERE e.manager_id = m.emp_id );
Пример вывода:
emp_id | emp_name | job_name | manager_id | hire_date | зарплата | комиссия | dep_id -------- + ---------- + ----------- + ------------ + ----- ------- + --------- + ------------ + -------- 67832 | CLARE | МЕНЕДЖЕР | 68319 | 1991-06-09 | 2550,00 | | 1001 69062 | Фрэнк | АНАЛИТИК | 65646 | 1991-12-03 | 3100,00 | | 2001 68319 | КАЙЛИНГ | ПРЕЗИДЕНТ | | 1991-11-18 | 6000,00 | | 1001 67858 | Скарлет | АНАЛИТИК | 65646 | 1997-04-19 | 3100,00 | | 2001 66928 | BLAZE | МЕНЕДЖЕР | 68319 | 1991-05-01 | 2750,00 | | 3001 (5 рядов)
Практика онлайн
Структура базы данных сотрудников:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите запрос в SQL, чтобы перечислить сотрудников, чья зарплата равна или больше средней максимальной и минимальной зарплаты.
Далее: Напишите запрос в SQL, чтобы перечислить сотрудников, чья зарплата меньше, чем зарплата его менеджера, но больше, чем зарплата любого другого менеджера.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования