Intern — Middle
54
Запрос SQL для подсчёта числа сотрудников в каждом подразделении
Компании, где спрашивали:
Условие задачи
Имеются две таблицы: divisions (список подразделений) и employees (список сотрудников). Требуется написать SQL‑запрос, который выведет название каждого подразделения и количество работников, относящихся к нему. Ожидаемый результат: | division_name | employees_count | | Отдел ИТ | 28 |
CREATE TABLE divisions (id PRIMARY KEY, name);
INSERT INTO divisions (id, name)
VALUES
(1, 'Отдел ИТ'),
(2, 'Отдел ИБ'),
(3, 'Отдел кадров');
CREATE TABLE employees (
id PRIMARY KEY,
division_id,
name,
surname,
mail,
CONSTRAINT division_fk
FOREIGN KEY (division_id)
REFERENCES divisions(id)
);
INSERT INTO employees (id, division_id, name, surname, mail)
VALUES
(1, 1, 'Имя', 'Фамилия', 'e-mail@yandex.ru'),
(2, 1, 'Имя1', 'Фамилия1', 'e-mail1@yandex.ru'),
(3, 1, 'Имя2', 'Фамилия2', 'e-mail2@yandex.ru'),
(4, 1, 'Имя3', 'Фамилия3', 'e-mail3@yandex.ru'),
(5, 1, 'Имя4', 'Фамилия4', 'e-mail4@yandex.ru'),
(6, 1, 'Имя5', 'Фамилия5', 'e-mail5@yandex.ru'),
(7, 1, 'Имя6', 'Фамилия6', 'e-mail6@yandex.ru'),
(8, 1, 'Имя7', 'Фамилия7', 'e-mail7@yandex.ru'),
(9, 3, 'Имя8', 'Фамилия8', 'e-mail8@yandex.ru');