Bonjour,
Je dispose d'une base de données sur une entreprise, dont les employés ont une fonction et travaillent dans un service. Il existe donc quatre tables, une pour les employés (personnel), pour les fonctions (fonction) et une pour les services (service), puis une dernière, la relation, qui précise, pour chaque employé, la période durant laquelle il occupe la fonction et le service (emploi). Pour connaître la fonction et le service actuel de l'employé, j'utilise la condition de date de fin égale à 0.
Je souhaite sélectionner le nombre de personnes par service pour chaque fonction. J'ai essayé cela :
Mais j'obtiens le détail par service, et pas par fonction.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT `service`.`Nom`, `fonction`.`Nom`, count(`fonction`.`Nom`) FROM `emploi` LEFT JOIN `database`.`service` ON `emploi`.`Service` = `service`.`Numéro` LEFT JOIN `database`.`fonction` ON `emploi`.`Fonction` = `fonction`.`Numéro` LEFT JOIN `database`.`personnel` ON `emploi`.`Employé` = `personnel`.`Numéro` WHERE (`emploi`.`DateFin` = 0) group by (`service`.`Nom`)
Auriez vous une autre solution?
Merci d'avance...
Partager