MySQL查询未返回预期结果

时间:2014-01-01 02:21:32

标签: mysql sql group-by

我正在尝试使用以下查询从我的数据库获取数据(每个类别的最高得分):

SELECT category, score FROM scores GROUP BY category ORDER BY score DESC

问题在于它没有按DESC顺序列出分数。例如,当我运行此查询时,它表示当实际最高得分为General Studies时,10的最高得分为25。以下是上述查询返回的内容:

enter image description here

但是,每当我运行以下查询而不按category进行分组时,DESC score无效:

SELECT category, score FROM scores ORDER BY score DESC

以下是上述查询返回的内容:

enter image description here

我需要的是要归类的类别以及返回类别中的最高分数。

1 个答案:

答案 0 :(得分:4)

您应该在此处添加max聚合函数。这将显示每个分组结果的最高分数。

SELECT category, max(score)
FROM scores  
GROUP BY category 
ORDER BY max(score) DESC