按列和对MySQL表中的字段进行排序

按列和对MySQL表中的字段进行排序,mysql,Mysql,我在一个表中有数据,字段由个人的名字组成,行由与他们对某项任务的贡献相关的数据组成。例如: 第一个人的总数是13,而第二个人的总数是25。我希望结果以person2,person1的顺序显示列 我希望对查询结果进行排序,以按照每个人的总和(列总和)的顺序重新排列表字段(人名)您可以使用最大值和最小值函数对值进行重新排序。您可以计算子查询中每个原始列的和 SELECT IF(GREATEST(sum1, sum2) = sum1, 'Person1', 'Person2') as HigherN

我在一个表中有数据,字段由个人的名字组成,行由与他们对某项任务的贡献相关的数据组成。例如:

第一个人的总数是13,而第二个人的总数是25。我希望结果以person2,person1的顺序显示列


我希望对查询结果进行排序,以按照每个人的总和(列总和)的顺序重新排列表字段(人名)

您可以使用
最大值
最小值
函数对值进行重新排序。您可以计算子查询中每个原始列的和

SELECT IF(GREATEST(sum1, sum2) = sum1, 'Person1', 'Person2') as HigherName,
       GREATEST(sum1, sum2) as val1 AS HigherVal,
       IF(LEAST(sum1, sum2) = sum1, 'Person1', 'Person2') AS LowerName,
       LEAST(sum1, sum2) as LowerVal
FROM (SELECT SUM(Person1) AS sum1, SUM(Person2) AS sum2
      FROM YourTable) AS x
这将产生如下结果:

HigherName  HigherVal   LowerName   LowerVal
Person2     25          Person1     13

当你说“column sum”时,你指的是什么?你可以使用
ORDER BY columnA+columnB+columnC
按不同字段的总和排序。请不要在一个问题中问两个不同的问题。一个人可以回答问题1,另一个人可以回答问题2。你只需要问一个问题,这样别人就可以完整地回答,而你也会接受这个答案。不清楚你想做什么。请编辑问题以使其更清楚,不要将澄清放在评论中。如果你展示一个输入表的示例和所需的结果,那将是最好的。排序通常会重新排序行,而不是列。是的,我又有了Donald Sutherland Body Crackers时刻。