sql >> Database teknologi >  >> RDS >> Mysql

MySQL - Sådan vælger du rækker med maks. værdi af et felt

Hvis du vil have slips, så kan du gøre sådan noget:

select s.*
from scores s
where s.score = (select max(s2.score) from scores s2 where s2.level = s.level);

Du kan få en række pr. niveau ved at samle dette:

select s.level, s.score, group_concat(s.user_id)
from scores s
where s.score = (select max(s2.score) from scores s2 where s2.level = s.level)
group by s.level, s.score;

Dette kombinerer brugerne (hvis der er mere end én) i et enkelt felt.



  1. PostgreSQL - FEJL:kolonnedato kan ikke castes til typedato

  2. Hvordan gemmer InnoDB tegnkolonner?

  3. MySQL-opdatering tager (for) lang tid

  4. Sådan opretter du en database fra en skabelon i Access 2016