Eventuali duplicati:
Retrieving the last record in each groupSQL: Trovare il record max per gruppo
ho una tabella, che ha tre campi e dei dati.
Name , Top , Total cat , 1 , 10 dog , 2 , 7 cat , 3 , 20 horse , 4 , 4 cat , 5 , 10 dog , 6 , 9
voglio selezionare il record che ha maggior valore ai Total
per ogni Name
, quindi il mio risultato dovrebbe essere simile a questo:
Name , Top , Total cat , 3 , 20 horse , 4 , 4 Dog , 6 , 9
Ho cercato di gruppo per Nome ordina totale, ma dare in cima alla maggior parte dei record di gruppo in base al risultato. Qualcuno può guidarmi, per favore?
I chiedo quanti duplicati ci sono per questa query - sicuramente molti m più di uno solo. Vedi le oltre 60 domande taggate "greatest-n-per-group" (per i casi n = 1). –
@ Jonathan: Questa è la "domanda per sempre" nel campo delle domande per principianti SQL. Ce n'è uno ogni giorno su SO. – Tomalak