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

MySQL kombinerer vælg med sum fra anden tabel

Du skal bare gruppere dine scores efter bruger:

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

Se den på sqlfiddle .




  1. Hvordan vælger man data mellem to datoer fra sqlite db i formatet dd-mm-åååå?

  2. Få mest muligt ud af dine PostgreSQL-indekser

  3. Hvorfor virker GRANT ikke i MySQL?

  4. Hvordan udtrækkes to på hinanden følgende cifre fra et tekstfelt i MySQL?