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

Signaler
Messages postés
2
Date d'inscription
mercredi 22 septembre 2010
Statut
Membre
Dernière intervention
24 septembre 2010
-
Messages postés
2
Date d'inscription
mercredi 22 septembre 2010
Statut
Membre
Dernière intervention
24 septembre 2010
-
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.

2 réponses

Messages postés
7
Date d'inscription
mardi 21 septembre 2010
Statut
Membre
Dernière intervention
7 mai 2011
1
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
Messages postés
2
Date d'inscription
mercredi 22 septembre 2010
Statut
Membre
Dernière intervention
24 septembre 2010

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