mysql groupe par et trier chaque groupe
J'ai le tableau suivant:
NOM DE L'ID DE TEMPS 1 A 0 2 3 3 B 1
Je suis l'aide de la requête ci-dessous qui produit:
SELECT * FROM `table` GROUP BY `NAME`
NOM DE L'ID DE TEMPS 1 A 0 3 B 1
Et je veux utiliser GROUP BY
pour générer un résultat de ce genre (remise de tri par la colonne du TEMPS):
NOM DE L'ID DE TEMPS 2 3 3 B 1
En lisant votre question, il est peu incertaine de la façon dont vous voulez que les champs soient triées.
Il n'est pas 100% clair ce résultat exactement ce que vous essayez d'obtenir. Peut-être essayer d'articuler ce vous voulez vraiment faire.
Mais que faire si je veux "order by" aller de l'ordre naturel?
Il n'est pas 100% clair ce résultat exactement ce que vous essayez d'obtenir. Peut-être essayer d'articuler ce vous voulez vraiment faire.
Mais que faire si je veux "order by" aller de l'ordre naturel?
OriginalL'auteur lachekar | 2010-12-15
Vous devez vous connecter pour publier un commentaire.
Il n'y a aucune assurance que les
NAME
de la colonne sera de la même rangée queMAX(TIME)
. Il peut bien travailler donné les données ci-dessus ou un petit dataset, mais n'est pas fiable. Pour une discussion approfondie, voir stackoverflow.com/questions/14770671/...C'est du travail! Semble seulement
ORDER BY
clause peut accepter l'alias dansSELECT
clause, tour de nice.D'accord Rob Forrest commentaire. Vous pouvez obtenir bug par cette requête, tout dépend de votre cas d'utilisation.
OriginalL'auteur Jiri Kratochvil
OriginalL'auteur php
D'essayer cette solution à partir d'ici http://www.cafewebmaster.com/mysql-order-sort-group, il a été en mesure de résoudre mon problème aussi 🙂
Exemple:
OriginalL'auteur dreamluverz
Bien, vous avez à décider ce que vous voulez voir dans l'ID et le champs de temps après le groupe. Un exemple, je vais select MAX(ID) et la SOMME(heure), puis par ordre tempstotal desc.
Espère que cette aide.
OriginalL'auteur Skorpioh
retourner le résultat sera:
OriginalL'auteur Common Man
Pour obtenir les lignes, avec les meilleurs temps pour chaque groupe, vous pouvez utiliser une jointure réflexive
OU
Démo
OriginalL'auteur M Khalid Junaid