Подзапросы SQL к базе данных сотрудников. Перечислите сотрудников класса 3, которые были приняты на работу в последнее время и принадлежат к PERTH.
Подзапросы SQL к базе данных сотрудника: упражнение 20 с решением
[ Внизу страницы доступен редактор для написания и выполнения сценариев. ]
20. Напишите запрос в SQL, чтобы перечислить сотрудников 3 класса, которые были приняты на работу в последнее время и принадлежат к PERTH.
Пример таблицы : сотрудники
Пример таблицы : отдел
Пример таблицы : salary_grade
Пример решения:
SELECT e.emp_id, e.emp_name, e.job_name, e.hire_date,e.salary
FROM employees e
WHERE e.dep_id IN
(SELECT d.dep_id
FROM department d
WHERE d.dep_location ='PERTH')
AND e.hire_date IN
(SELECT max(hire_date)
FROM employees
WHERE emp_id IN
(SELECT emp_id
FROM employees e,
salary_grade s
WHERE e.salary BETWEEN s.min_sal AND s.max_sal
AND s.grade = 3)) ;
ИЛИ ЖЕ
SELECT e.emp_id, e.emp_name, e.job_name, e.hire_date,e.salary
FROM employees e,
department d
WHERE d.dep_location='PERTH'
AND hire_date IN
(SELECT max(hire_date)
FROM employees e,
salary_grade s
WHERE salary BETWEEN min_sal AND max_sal
AND grade=3);
Пример вывода:
emp_id | emp_name | job_name | hire_date | оплата труда -------- + ---------- + ---------- + ------------ + ------ --- 68454 | TUCKER | ПРОДАВЕЦ | 1991-09-08 | 1600,00 (1 ряд)
Практика онлайн
Структура базы данных сотрудников:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Написать запрос на SQL, чтобы найти наиболее высокооплачиваемых сотрудников в отделе МАРКЕТИНГ.
Далее: Напишите запрос в SQL, чтобы перечислить сотрудников, которые являются старшими по сравнению с наиболее недавно нанятыми сотрудниками, работающими в KAYLING.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования