Подзапросы SQL к сотруднику База данных: перечислите тех менеджеров, которые получают зарплату меньше, чем зарплата его сотрудников
Подзапросы SQL к базе данных сотрудника: Упражнение 46 с решением
[ Внизу страницы доступен редактор для написания и выполнения сценариев. ]
46. Напишите запрос в SQL, чтобы перечислить тех менеджеров, которые получают зарплату меньше, чем зарплата его сотрудников.
Пример таблицы : сотрудники
Пример решения:
SELECT *
FROM employees w
WHERE salary < ANY
(SELECT salary
FROM employees
WHERE w.emp_id=manager_id);
ИЛИ ЖЕ
SELECT DISTINCT m.emp_name,
m.salary
FROM employees w,
employees m
WHERE w.manager_id = m.emp_id
AND w.salary>m.salary;
ИЛИ ЖЕ
SELECT *
FROM employees w
WHERE emp_id IN
(SELECT manager_id
FROM employees
WHERE w.salary<salary);
Пример вывода:
emp_id | emp_name | job_name | manager_id | hire_date | зарплата | комиссия | dep_id -------- + ---------- + ---------- + ------------ + ------ ------ + --------- + ------------ + -------- 65646 | ЙОНАС | МЕНЕДЖЕР | 68319 | 1991-04-02 | 2957,00 | | 2001 (1 ряд)
Практика онлайн
Структура базы данных сотрудников:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите запрос в SQL, чтобы перечислить имена менеджеров, в которых работает максимальное количество сотрудников.
Далее: Напишите запрос в SQL, чтобы вывести список всех сотрудников, подчиненных BLAZE.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code