SQL comment trouver les lignes qui ont la plus haute valeur de colonne spécifique
Par exemple, la table a des colonnes MYINDEX et le NOM.
MYINDEX | NAME
=================
1 | BOB
2 | BOB
3 | CHARLES
Ho puis-je trouver la ligne avec la plus haute MYINDEX pour le NOM spécifique? E. g. Je veux trouver de la LIGNE 2 pour nom de "BOB".
Édité, pour l'amour de dieu ne décrivent pas les tableaux, en prose.
OriginalL'auteur SharpAffair | 2010-07-26
Vous devez vous connecter pour publier un commentaire.
SELECT Max(MYINDEX) FROM table WHERE NAME = [insertNameHere]
EDIT: pour obtenir l'ensemble de la ligne:
Heneks: Pas comment j'ai compris la pré-édition. Pas plus que la plupart des premières affiches, j'ai donc tendance à penser que la mienne était l'interprétation correcte lorsque j'ai écrit la réponse. Edit à venir pour répondre à sa question.
Upvoted votre modifier. Mais...son origine, non édité question "Ho puis-je trouver la ligne avec la plus haute MYINDEX pour le NOM spécifique?" certainement demandé à la ligne 🙂
OriginalL'auteur AllenG
Pour l'ensemble de la ligne, faire:
OriginalL'auteur JNK
Il y a plusieurs façons de s'attaquer à celui-ci. Je suppose qu'il y a peut être d'autres colonnes que vous souhaitez à partir de la ligne, sinon, comme d'autres l'ont dit, il suffit de nom,
MAX(my_index) ... GROUP BY name
fonctionne. Voici quelques exemples:Une autre solution possible:
OriginalL'auteur Tom H
Si vous voulais voir l'indice le plus élevé pour nom = 'Bob', utilisation:
OriginalL'auteur flayto
Si vous souhaitez ignorer la jointure interne, vous pouvez faire:
OriginalL'auteur Ryan Shillington
Utilisation
OriginalL'auteur sukru