MySQL:从表中仅按用户名选择结果

MySQL:从表中仅按用户名选择结果

我有一张包含测试结果的表格,其组成如下:

+-----------------------+
| id | score | username |
+-----------------------+
| 1  |    15 |     mike |
| 2  |    23 |     tom  |
| 3  |    16 |     mike |

etc..

我只想为每个用户名选择一个结果,但选择得分最高的结果。

输出应该是这样的:

Mike: 16
Tom:  23

如何做?

答案1

您可以使用group by子句为每个用户仅获取一个结果。例如:

SELECT     username, MAX(score)
FROM       results
GROUP BY   username
ORDER BY 2 DESC

相关内容