[sql] probleme avec group by

brudao Messages postés 553 Statut Membre -  
 tobec -
Bonjour,
je vais prendre un petit exemple pour essayer de matérialiser mon problème

table personne (une table mysql avec des enregistrements)
mlle nom prenom poids
8 nom1 Pre1 67
8 nom1 Pre2 80
7 nom2 Pre2 57
.. ... ... ..
2 nom5 pre5 78

requete="select mlle, nom , prenom, poids where poids>50 from personne group by mlle order by nom";

la requete (group by) renvoie dans mon exemple: 8 nom1 Pre1 67
7 nom2 Pre2 57
2 nom5 pre5 78

je veux que lorsqu'il regroupe (group by) qu'il me renvoi le plus grand poids
c'est à dire ici : 8 nom1 Pre1 80 au lieu de 8 nom1 Pre1 67

4 réponses

tobec
 
salut

je ne suis pas convaincu que ce soit la solution a ton problème mais tu peux toujours essayer^^

dans ta clause "order by", ajoute "poids DESC"
0
william7007 Messages postés 344 Statut Membre 46
 
ben moi je pense qu'il faut mettre
ORDER BY poids DESC
AND
ORDER BY nom
0
godzi44
 
Salut
Je ne vois pas vraiment à quoi correspond mlle, serait-ce ta clé primaire auquel cas tu ne peut avoir deux le même enregistrement.
et sinon si tu veut seulement récuperé la plus grande valeur ta requète devrait ressembler à ceci:
select mlle, nom, prenom, poids Max(poids) from personne;
le group by ne sert que dans le cas d'un sum(), count()...
0
tobec
 
non
order by
and order by

normalement tu peux mettre plusieures clauses dans un order by

order by nom, poids DESC;
0