我写了以下sql代码:
SELECT Country, ROUND(SUM(Consumption), 2) AS 'Total Consumption'
FROM alcohol
GROUP BY Country
ORDER BY 'Total Consumption' DESC;
当我运行此代码时,输出根本不按“总消耗”排序;它仅返回按原始顺序排序的数据(按国家/地区字母顺序排列)。出于好奇,我尝试按 ASC 顺序而不是 DESC 顺序对其进行排序(尽管 DESC 是我想要的),并得到了相同的结果。
如果我错过了一些明显的东西,我很抱歉,因为我是一个相对初学者哈哈。
当我运行之前的代码时,我希望它返回所有国家/地区和“总消耗”值,并按最高“总消耗”在顶部和降序排列。我得到的是所有国家及其“总消费”值,按“国家”字母顺序从 A 到 Z 排序(这是原始数据集的排序方式)。
非常感谢评论回答我的问题;结果 MySQL 无法识别别名,我只能按原始函数进行排序。效果很好。再次感谢大家!