Comment afficher des enregistrements dont le COUNT donne 0 [Résolu]

benoitd77 2 Messages postés mercredi 22 septembre 2010Date d'inscription 24 septembre 2010 Dernière intervention - 23 sept. 2010 à 00:49 - Dernière réponse : benoitd77 2 Messages postés mercredi 22 septembre 2010Date d'inscription 24 septembre 2010 Dernière intervention
- 24 sept. 2010 à 01:31
Bonjour!

J'ai une table d'élection, de candidats, d'électeurs et de votes et j'ai une requête qui me retourne le nombre de vote pour chaque candidats.

Mais lorsque je fais la requête, les candidats n'ayant eu aucun vote n'apparaissent pas et je voudrais qu'ils apparaissent dans le résultat de la requête.

Voici la requête que je fais :

SELECT fk_idCandidat, Count( fk_IdCandidat ) AS NbVote
FROM vote
GROUP BY fk_IdCandidat

ce qui me donne

fk_idCandidat NbVote
1. . . . . . . .1
4. . . . . . . .5
5. . . . . . . .2
6. . . . . . . .4

alors que je voudrais ceci

fk_idCandidat NbVote
1. . . . . . . .1
2. . . . . . . .0
3. . . . . . . .0
4. . . . . . . .5
5. . . . . . . .2
6. . . . . . . .4



Comment pourrais-je résoudre ce problème?
Merci de votre aide.
Afficher la suite 

2 réponses

Répondre au sujet
cs_gogniol 7 Messages postés mardi 21 septembre 2010Date d'inscription 7 mai 2011 Dernière intervention - 23 sept. 2010 à 23:20
+1
Utile
Bonjour,

En fait, pour lister tout les candidats il faut faire une jointure avec les votes.

Le requête devient :

SELECT C.pk_IdCandidat , Count( V.fk_IdCandidat ) AS NbVote
FROM vote V RIGHT JOIN candidat C ON C.pk_IdCandidat = V.fk_IdCandidat
GROUP BY C.pk_IdCandidat
ORDER BY C.pk_IdCandidat

Cordialement
Gogniol
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_gogniol
benoitd77 2 Messages postés mercredi 22 septembre 2010Date d'inscription 24 septembre 2010 Dernière intervention - 24 sept. 2010 à 01:31
0
Utile
Bonjour,
Je viens tout juste de tester cette requête que vous me proposez et elle fonctionne à merveille!! Maintenant, j'ai exactement le résultat que je désirais.

Merci infiniment.

Benoit
Commenter la réponse de benoitd77

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.