选择分组到特定标识符的值

我有一个可以在游戏中追踪高分的应用程序。

我有一个 表,将一个user_id映射到一个分数。

我需要返回5个最高分数,但对于任何 特定 用户,仅返回1个最高分数。

因此,如果单纯以数字为基础,用户X的最高得分为5,那么我只返回最高的得分,然后再返回接下来的4个用户得分。

我尝试使用:

SELECT user_id, score 

FROM user_scores

ORDER BY score DESC

GROUP BY user_id

LIMIT 5

但是,似乎MySQL丢弃了得分高于1的任何user_id。

回答:

这应该工作:

SELECT user_id, MAX(score)

FROM user_scores

GROUP BY user_id

ORDER BY MAX(score) DESC

LIMIT 5

以上是 选择分组到特定标识符的值 的全部内容, 来源链接: utcz.com/qa/415792.html

回到顶部