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

MySQL łączy wybierz z sumą z innej tabeli

Wystarczy pogrupować swoje wyniki według użytkownika:

SELECT @p:[email protected]+1 AS position, t.*
FROM (
  SELECT   user.user_id,
           user.user_name,
           IFNULL(SUM(score.score_points),0) AS total_points
  FROM     user LEFT JOIN score ON user.user_id = score.score_user_id
  GROUP BY user.user_id
  ORDER BY total_points DESC
) AS t JOIN (SELECT @p:=0) AS initialisation

Zobacz go na sqlfiddle .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ranking wspólnych pozycji w MySQL

  2. Jak zdobyć pozycję w rzędzie?

  3. Uruchom MySQLDump bez blokowania tabel

  4. Tworzenie dynamicznych linków za pomocą PHP/MySQL

  5. Dotacja na wiele baz danych. MySQL