2 votes

Comment puis-je déterminer quels employés ont travaillé par semaine en 2012 ?

Je suis un débutant en SQL 2008. J'ai un à déterminer combien d'employés ont travaillé sur un projet particulier pour chaque semaine pour les semaines en 2012. J'ai une table d'employés et elle contient les dates de début et de fin pour chaque employé. J'ai besoin de savoir quels employés ont travaillé pendant chaque semaine en 2012. Jusqu'à présent, j'ai obtenu :

Select Count (distinct employeeid) 

From employees.employee e
left join projectname.projectname p on p.projectid=e.projectid

Where
p.name = 'Alaska'

Group by Datepart(week)

0voto

Tricky12 Points 2812

Je pense que c'est (au moins proche) de ce que vous recherchez.

SELECT COUNT(DISTINCT e.employeeid)
FROM employees e
LEFT JOIN projectname p
ON e.projectid = p.projectid
WHERE p.name = 'Alaska'
  AND e.startdate <= '2012-01-01'
  AND e.enddate >= '2012-12-31'
GROUP BY DATEPART(week, startdate)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X