【发布时间】:2014-03-07 22:12:43
【问题描述】:
任何人都知道我如何获得与每个 game_id、每个级别的最高分数相对应的日期:
----------------------------------------
|id |game_id |level |score |date |
----------------------------------------
|1 |0 |1 |90 |1391989720 |
|1 |0 |1 |95 |1391989721 |
|1 |1 |1 |4 |1391989722 |
|1 |1 |1 |8 |1391989723 |
|1 |1 |2 |6 |1391989724 |
----------------------------------------
SELECT cdu_user_progress.game_id,
cdu_user_progress.level,
max_score,
cdu_user_progress.date
FROM
(
SELECT game_id, level, MAX(score) AS max_score
FROM cdu_user_progress
GROUP BY game_id, level
) AS ms
JOIN cdu_user_progress ON cdu_user_progress.game_id = ms.game_id AND
cdu_user_progress.level = ms.level AND
cdu_user_progress.score = ms.max_score
现在,如果我还想获得 FIRST game_id(每个级别)的分数和日期,该怎么办:
-----------------------------------------------------------------
|game_id |level |max_score |max_date |first_score |first_date |
-----------------------------------------------------------------
|0 |1 |95 |1391989721 |90 |1391989720 |
|1 |1 |8 |1391989723 |4 |1391989722 |
|1 |2 |6 |1391989724 |6 |1391989724 |
-----------------------------------------------------------------
【问题讨论】:
-
幸运的是,每个人都会问这个问题。单身的。日。在所以。有时也能正确回答!
-
到目前为止,您提出了 15 个问题。有没有注意到当你写你的问题时弹出的“相关”列?副本也是从您问题右侧的“相关”列中挑选出来的。
标签: mysql sql groupwise-maximum