Bonjour,

Un petit dessin vaut mieux qu'un long discours...

J'ai deux tables liées :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
[users]
    [id_user] NOT NULL PRIMARY KEY
    [id_avatar] FOREIGN KEY
    [nom]
 
[avatars]
    [id_avatar] NOT NULL PRIMARY KEY
    [url] NOT NULL
    [description]
Avec pour le contenu :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
[users]
1, 1, "Alice"
2, 2, "Bob"
3, 1, "Charlie"
4, 4, "Diane"
 
[avatars]
1, "/quiet.gif", "Je suis calme"
2, "/sad.gif"  , "Je suis triste"
3, "/angry.gif", "Je suis en colère"
4, "/happy.gif", "Je suis heureux"
Je souhaite obtenir en sortie :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
2, "Je suis calme"
1, "Je suis triste"
0, "Je suis en colère"
1, "Je suis heureux"
Comme première étape, j'arrive à obtenir

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
"Alice"  , "Je suis calme"
"Bob"    , "Je suis triste"
"Charlie", "Je suis calme"
"Diane"  , "Je suis heureux"
NULL     , "Je suis en colère"
Avec la requête :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
SELECT [users].[nom], [avatars].[description]
FROM [users] RIGHT JOIN [avatars] ON [users].[id_avatar]=[avatars].[id_avatar]
En revanche, dès que je place mon COUNT(), j'ai le choix entre

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
2, "Je suis calme"
1, "Je suis triste"
1, "Je suis heureux"
ou

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
2, "Je suis calme"
1, "Je suis triste"
1, "Je suis en colère" --le 1 est compté pour l'entrée NULL
1, "Je suis heureux"
Y a-t-il une solution à ce problème ?

D'avance merci !