Aide pour un code

cs_sabrina7 Messages postés 26 Date d'inscription vendredi 17 février 2006 Statut Membre Dernière intervention 25 mars 2007 - 17 févr. 2006 à 18:56
cs_sabrina7 Messages postés 26 Date d'inscription vendredi 17 février 2006 Statut Membre Dernière intervention 25 mars 2007 - 18 févr. 2006 à 14:29
Bonjour


J'utilise une base Access. Voila mon problème. Je recherche un code en VB afin de réaliser l'opération suivante:


J'ai une table comme ci-dessous:


Numéro Mois Décision
1 Février D
2 Février D
3 Février A
4 Avril D
5 Mars A



J'aimerai qu'une fonction me calcul dans une requete le nombre de décision 'D' par mois, et avoir un affichage comme ci-dessous car je veut faire un graphique ensuite avec ces données


Mois Nombre
Février 2
Avril 1
Mars 0


Mon objectif est d'avoir les résultats sur plusieurs lignes des nombres de décision 'D' pour chaque mois

Merci de votre aide
Sabrina

6 réponses

cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
17 févr. 2006 à 19:18
Salut,

Pour la requête :
"select mois, count(*) as nombre from tatable where décision = 'D' group by mois"

Pour l'affichage, tu peux utiliser une listview.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
cs_sabrina7 Messages postés 26 Date d'inscription vendredi 17 février 2006 Statut Membre Dernière intervention 25 mars 2007 1
17 févr. 2006 à 19:56
Super c'est tout à fait ce que je voulais !!!! Merci CanisLupus !!!!!

Juste un petit truc en +, j'aimerai qu'il m'affiche également la valeur par défaut '0' pour les mois ou il n'y a pas de décision égal à 'D'.
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
17 févr. 2006 à 20:53
C'est vrai, j'avais zappé le '0', dans ce cas, on entre dans les complications. Il y a peut-être mieux mais, perso, je fais comme ça :
"select mois, (select count(mois) from tatable t1 where t1.mois t2.mois and decision 'D') as nombre from tatable t2 group by mois"

Les t1 et t2 sont des alias permettant de construire une requete et sa (ses) sous-requetes sur une même table.
Pour le tri dans la requete, c'est une autre paire de manches, dans ce cas, tu ne peux trier simplement que sur le mois (order by mois), sinon ça devient très compliqué. Il est plus simple de trier le contrôle qui reçoit le résultat (tableau, listview, ...)

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
cs_sabrina7 Messages postés 26 Date d'inscription vendredi 17 février 2006 Statut Membre Dernière intervention 25 mars 2007 1
17 févr. 2006 à 23:11
OK merci beaucoup pour cette requete SQL. Par contre tu vas me trouver chiante (lol) mais je voudrais avoir comme résultat
de la requete les 12 mois de l'année sauf que je n'ai pas les 12 mois dans ma table. J'ai donc rajouter une table avec les 12 mois
de l'année (j'ai trouver que ca comme solution ??!!) Donc pour détailler:


Dans ma table


Numéro Mois Décision
1 Février D
2 Février D
3 Février A
4 Avril D
5 Mai A


Dans une autre table (afin d'avoir les 12 mois)


Nom_mois


Janvier
Février
Mars
Avril
Mai
Juin
Jusqu'a décembre


Comme résultat dans ma requete de nombre de décision 'D'


Mois Nombre
Janvier 0
Février 2
Mars 0
Avril 1
Mai 0
juin 0
Jusqu'a décembre 0


Voila apres ca normalement je ne devrai plus t'embeter !!!! lol
Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
18 févr. 2006 à 10:59
Suffit d'adapter la requete :
"select nom_mois, (select count(mois) from tatable where tatable.mois table_des_mois.nom_mois and decision 'D') as nombre from table_des_mois"

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
cs_sabrina7 Messages postés 26 Date d'inscription vendredi 17 février 2006 Statut Membre Dernière intervention 25 mars 2007 1
18 févr. 2006 à 14:29
Merci beaucoup CanisLupus, grace à toi mon problème est réglé !!!!!!
0
Rejoignez-nous