总结每个用户和跟踪的最高分数

时间:2013-06-28 07:50:36

标签: mysql sql innodb

这可能很容易,但对于我的生活,我似乎无法弄明白。 这是我的表:

uid  |  userID  |  trackID  |  carID  |  highscoreDate  |  highscore
-----------------------------------------------------------------
 1        1            1         1           [date]         123
 2        1            1         1           [date]          44
 3        2            2         1           [date]         222
 4        2            1         1           [date]          28
 5        1            2         1           [date]          17

我想获得每个用户和跟踪的最高高分的 SUM 。在上面的数据中,将给出:

 user 1: 140
 user 2: 250

1 个答案:

答案 0 :(得分:5)

如何首先使用子选择。

这样的东西
SELECT userID, SUM(highscore)
FROM (
    SELECT userID, trackID, MAX(highscore) highscore
    FROM MyTable
    GROUP BY userID, trackID
  ) s
GROUP BY userID

SQL Fiddle DEMO