Name Score
Jim 1
Jim 2
Jim 4
Lisa 2
Lisa 5
Ted 1
Ted 2
Ted 3
我如何按名称分组,按最高分排序,并且只选择一行?因此查询将返回 3 行 Jim 4、Lisa 5 和 Ted 3。
最佳答案
要查找最高分数,您可以 GROUP BY名称,并使用 MAX功能:
SELECT ns.Name, MAX(ns.Score) AS Score
FROM NameScore AS ns
GROUP BY ns.Name
ORDER BY ns.Name ASC
我编写了表名称,因为您没有提供表名称,请将其切换为您的真实表。
关于mysql - 如何按列分组、按不同列排序以及将每个组限制为一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8470245/