Bonjour,

J'ai une table nommée projet avec les champs suivants :

id, date_mission, date_cloture, etat_mission

Je voulais mettre un graphe pour l'indicateur suivant : taux de validation des projet par mois (ça veut dire le nombre de projet validé par mois sur le nombre total de projet toujours par mois).

NB : etat_mission peut prendre les valeurs suivantes : encours ou bien Clôturée

pour faire, je met la requette sql suivant pour un sqldatasource :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT ( (SELECT COUNT(id) FROM [projet] WHERE etat_mission = 'Clôturée') / COUNT(id) ) as taux, month(date_mission) as mois FROM [projet] GROUP BY month(date_mission)
La requette semble etre correcte mais le resultat est erroné vu que le premier tronçon
Code : Sélectionner tout - Visualiser dans une fenêtre à part
(SELECT COUNT(id) FROM [projet] WHERE etat_mission = 'Clôturée')
me retourne le nombre d'enregistrement ayant un etat_mission=Clôturée en global et non pas par mois.

ca veut dire que le GROUP BY à la fin n'agit pas sur la premiere requette à l'interieur.

Ma demande peut se traduire par :
Comment rendre le GROUP BY en influence sur la requette au milieu. ou bien comment mettre en place une variable qui peut communiquer entre les deux select imbriqués.


Merci pour votre help.