Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Mysql Max z Grupą według zapytania

Powinno to dać wynik, którego szukasz. Ponieważ MySql nie ma PARTITION funkcjonować jako SQL SERVER, użyłem znanego rozwiązania.

SELECT tmp.id, tmp.userid,tmp.username,tmp.`date`,score FROM
   (SELECT *, IF(@prev<>userid, @rownum := 1, @rownum := @rownum+1 ) AS rank,
           @prev := userid
    FROM scores s0
    JOIN (SELECT @rownum := NULL, @prev := 0) AS r
    ORDER BY s0.userid, s0.score DESC, s0.`date` DESC
   ) AS tmp
WHERE tmp.rank=1
ORDER BY tmp.score DESC, tmp.`date` desc



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL — Wybierz określoną wartość z pobranej tablicy

  2. Jak usunąć wszystkie tabele z bazy danych za pomocą manage.py CLI w Django?

  3. Jak uzyskać ostatni dzień miesiąca w MySQL?

  4. Zegar odliczający JavaScript i PHP, który wyświetla to samo dla wszystkich

  5. Co powinien wiedzieć każdy programista PHP?