2017-09-21 2 views
0

S'il vous plaît prendre en compte les deux tableaux - employés et DépartementComment utiliser COUNT() et GROUP BY pour afficher le nombre d'employés dans chaque département

Employee: 
EmployeeID 
Name 
DeptID 

Department: 
DepartmentID 
DeptName 
LocID 

Employee.DeptID is a foreign key to Department.DepartmentID 

Comment peut-on afficher une liste de tous les ministères (ministère noms) et le nombre d'employés dans chaque département? La sortie devrait ressembler à ceci:

DepartmentName   Number of employees 
Accounts    30 
HR      24 
Production    400 
Sales/Marketing  250 

etc... 
+3

Votre titre dit tout. Utilisez 'COUNT (*)' et 'GROUP BY DepartmentID' – Barmar

+0

Joignez-vous à la table' Department' pour obtenir le nom du département. – Barmar

+2

SO n'est pas un service de codage gratuit. Vous devez essayer de résoudre le problème vous-même. Si vous ne pouvez pas le faire fonctionner, postez ce que vous avez essayé et nous vous aiderons à le réparer. – Barmar

Répondre

1

Utilisez GROUP BY

SELECT d.deptID, count(e.deptID) 
FROM Department d 
LEFT JOIN Employee e ON d.DeptID = e.DeptID 
GROUP BY d.deptId 

et LEFT JOIN est utilisé pour inclure les services qui ne sont pas employés.

1

SELECT DEPTNAME AS DepartmentName, COUNT (EmployeeID) AS NumberOfEmployees de l'employé Département INNER JOIN ON DeptID = DepartmentID GROUP BY DepartmentID