Составить SQL запрос

Печать RSS
272

Автор
Дух
0
Есть таблица - сотрудники id name department_id
Есть таблица - отделы - id department_name

Как составить запрос чтобы получить данные вида
"Отдел" - "Кол-во сотрудников"
Отдел рекламы 5
Отдел продаж 6

Чатланин
0
SELECT *, (SELECT COUNT(`id`) FROM `сотрудники` WHERE `department_id`='отделы.id') AS c FROM `отделы`

выводишь название отдела department_name, кол-во сот-ов - c

2000 лет д.н.э.
0
    "SELECT сотрудники.department_id, департамент.department_name count(*) FROM сотрудники LEFT JOIN департамент ON сотрудники.department_id = департамент.id GROUP BY департамент.id;"
как то так, примерно
Д

Пришелец
0
Если нужно вывести и те департаменты в которых еще нет сотрудников, то:
SELECT `d`.`departament_name`, COUNT(`u`.`id`) 
FROM `departament` `d`
LEFT JOIN `user` `u` ON `u`.`departament_id` = `d`.`id`
GROUP BY `d`.`id`

Если только те департаменты в которых есть сотрудники, то LEFT замени на INNER
Автор
Дух
0
Спасибо всем, помогло
SELECT dep_id, COUNT(*) from users GROUP by dep_id

возвращает номер отдела и кол-во, что и нужно было
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск