"Trier par COUNT() ?"

Résolu
Peoxus Messages postés 12 Date d'inscription dimanche 28 septembre 2008 Statut Membre Dernière intervention 15 juillet 2009 - 15 janv. 2009 à 22:11
Peoxus Messages postés 12 Date d'inscription dimanche 28 septembre 2008 Statut Membre Dernière intervention 15 juillet 2009 - 15 janv. 2009 à 22:42
Bonjour à tous.

Je n'ai aucune idée du nom que peut avoir mon problème, donc j'ai beaucoup du mal à trouver des réponses sur Internet.

Je donne des noms explicites et schématiques pour la suite du post, histoire que ce soit compréhensible.

J'ai par exemple une table de personnes ayant visité des profils :
[liste_visites]
id_personne id_visiteur
1 2
2 6
3 2
3 5
... ...

Je souhaite afficher la liste des personnes ayant reçu le plus grand nombre de visites dans l'ordre décroissant du nombre de visites reçues, comme une liste des personnes ayant les profils les plus visités.

Euh... pour être "clair" je cherche à obtenir :
id_personne nombre_visites
3 2
1 1
2 1
... ...

J'ai tenté une requête du genre :
SELECT id_personne, COUNT(id_visiteur) FROM liste_visites GROUP BY id_visiteur ORDER BY COUNT(id_visiteur) DESC;
mais bon...

Je m'arrache les cheveux sur quelque chose qui à mon avis doit être simplissime lorsqu'on sait ce que c'est.

Help please !

4 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
15 janv. 2009 à 22:33
A part le GroupBy qui doit être fait sur id_personne, cette requette me semble bonne.

SELECT id_personne, COUNT(id_visiteur) FROM liste_visites GROUP BY id_personne ORDER BY COUNT(id_visiteur) DESC;

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
3
Peoxus Messages postés 12 Date d'inscription dimanche 28 septembre 2008 Statut Membre Dernière intervention 15 juillet 2009
15 janv. 2009 à 22:15
Oups je ne comprends pas.
J'ai pourtant bien tapé mon message mais il s'affiche en bloc.
0
Peoxus Messages postés 12 Date d'inscription dimanche 28 septembre 2008 Statut Membre Dernière intervention 15 juillet 2009
15 janv. 2009 à 22:17
Ah le fait de "revenir à une TextBox classique" a réglé mon problème d'affichage. Je réécris mon message.

Bonjour à tous.

Je n'ai aucune idée du nom que peut avoir mon problème, donc j'ai beaucoup du mal à trouver des réponses sur Internet.

Je donne des noms explicites et schématiques pour la suite du post, histoire que ce soit compréhensible.

J'ai par exemple une table de personnes ayant visité des profils : [liste_visites]
id_personne id_visiteur
1 2
2 6
3 2
3 5
... ...

Je souhaite afficher la liste des personnes ayant reçu le plus grand nombre de visites dans l'ordre décroissant du nombre de visites reçues, comme une liste des personnes ayant les profils les plus visités.

Euh... pour être "clair" je cherche à obtenir :
id_personne nombre_visites
3 2
1 1
2 1
... ...

J'ai tenté une requête du genre :
SELECT id_personne, COUNT(id_visiteur) FROM liste_visites GROUP BY id_visiteur ORDER BY COUNT(id_visiteur) DESC; mais bon...

Je m'arrache les cheveux sur quelque chose qui à mon avis doit être simplissime lorsqu'on sait ce que c'est.

Help please !
0
Peoxus Messages postés 12 Date d'inscription dimanche 28 septembre 2008 Statut Membre Dernière intervention 15 juillet 2009
15 janv. 2009 à 22:42
Exact ! C'était ça !
Merci infiniment. :)
0