sql >> Database >  >> RDS >> Mysql

MySQL - Hoe rijen te selecteren met de maximale waarde van een veld

Als je stropdassen wilt krijgen, kun je zoiets als dit doen:

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

Je zou één rij per niveau kunnen krijgen door dit samen te voegen:

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;

Dit combineert de gebruikers (als er meer dan één zijn) in een enkel veld.



  1. MySQL-update met subselectie

  2. XAMPP - Fout:MySQL wordt onverwacht afgesloten

  3. Werk je alleen de gewijzigde velden bij of alle velden?

  4. De grootte van de InnoDB-bufferpool voor uw MySQL-server berekenen