SQL - ORDER BY COUNT

Fermé
Eric - Modifié par Eric le 14/11/2010 à 20:38
 El passo - 14 nov. 2010 à 21:28
Bonjour à tous !

Après plusieurs heures à me tirer les cheveux et à chercher sur le net, j'avoue mon incapacité à réaliser ma requête. Je dispose de 2 table :

MESSAGES (id message, message)
NOTES (id_message, value)

La value d'une note peut être 0 ou 1.

Je souhaiterais afficher mes messages par note (celui qui a le plus de 0 en premier et celui qui en a le moins en dernier).

Idem pour les 1, mais j'aurais qu'à adapter la première ;)

Si vous avez des pistes, je suis preneur. Perso j'en étais là :

SELECT m.message_id, m.message_text, count(n.note_value) as notecount FROM notes n, messages m WHERE n.note_value = 0 GROUP BY m.message_id ORDER BY notecount

Cette requête est presque bonne. Le souci c'est que le count m'affiche le count de tous les résultats (et pas groupés par id)

Merci !
A voir également:

2 réponses

bonsoir
il manque a priori la jointure des 2 tables

where
m.message_id=n.message_id
and n.note_value = 0
......

A+
2
Exact c'était ça :) Merci beaucoup !

Il me reste plus qu'à régler le problème de l'affichage des messages qui n'ont pas été notés (et qui donc ne s'affichent pas =/).

Encore merci, et bonne soirée ;)
0
Alors là il va falloir jouer avec "outer join" !!
Bon courage
0