MYSQL按列总和排序

时间:2010-06-17 05:38:20

标签: mysql sql-order-by

关于如何通过两列而不是一列来排序MYSQL查询结果的想法?

Select * FROM table ORDER BY (col1+col2) desc

我知道这不起作用。但我希望它能传达我想做的事情。

谢谢!

5 个答案:

答案 0 :(得分:24)

为什么不在结束之前尝试它不起作用?事实上,确实如此。

答案 1 :(得分:4)

假设您有一个名为“学生

的表格

enter image description here

现在你想知道每个学生得分的总分。 因此,键入以下查询

SELECT Name, S1, S2, SUM(S1+S2) AS TOTAL
FROM Students
GROUP BY Name, S1, S2
ORDER BY Total;

您将获得以下结果。

enter image description here

答案 2 :(得分:3)

我认为你应该可以做到

SELECT *, col1+col2 as mysum ORDER BY mysum

这与您已经拥有的基本相同

答案 3 :(得分:1)

您编写的查询应该可以正常工作,您可以在ORDER BY子句中使用任何表达式。

答案 4 :(得分:1)

我可以确认这在某些情况下不起作用。 检查某个值是否为NULL

Select * FROM table ORDER BY (IFNULL(col1,0)+IFNULL(col2,0)) desc