Подзапросы SQL к сотруднику База данных: перечислите сведения об отделах, в которых работает максимальное количество сотрудников.
Подзапросы SQL к базе данных сотрудника: упражнение 29 с решением
[ Внизу страницы доступен редактор для написания и выполнения сценариев. ]
29. Напишите запрос в SQL, чтобы перечислить детали отделов, где работает максимальное количество сотрудников.
Пример таблицы : сотрудники
Пример таблицы : отдел
Пример решения:
SELECT d.dep_id,
d.dep_name,
d.dep_location,
count(*)
FROM employees e,
department d
WHERE e.dep_id = d.dep_id
GROUP BY d.dep_id
HAVING count(*) =
(SELECT MAX (mycount)
FROM
(SELECT COUNT(*) mycount
FROM employees
GROUP BY dep_id) a);
ИЛИ ЖЕ
SELECT *
FROM department
WHERE dep_id IN
(SELECT dep_id
FROM employees
GROUP BY dep_id
HAVING count(*) IN
(SELECT MAX (mycount)
FROM
(SELECT COUNT(*) mycount
FROM employees
GROUP BY dep_id) a));
Пример вывода:
dep_id | имя_почты | dep_location | подсчитывать -------- + ----------- + -------------- + ------- 3001 | МАРКЕТИНГ | ПЕРТ | 6 (1 ряд)
Практика онлайн
Структура базы данных сотрудников:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Написать запрос в SQL, чтобы перечислить сотрудников в отделе 1001, чья зарплата превышает среднюю зарплату сотрудников в отделе 2001 года.
Далее: напишите запрос в SQL для отображения сотрудников, чье имя менеджера JONAS.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования