Mysql 如何通过分组获得最大值的行

Mysql 如何通过分组获得最大值的行,mysql,Mysql,我有一张表格,上面给出了每天每小时的人口数量。如何获取人口数最大的行?下面是该表的一个示例 date hour population 2015-07-11 10 205 2015-07-11 11 390 2015-07-11 12 579 2015-07-11 13 679 2015-07-11 14 699 2015-07-11 15 890 2015-07-11 16 816 2015-07-11 17 970 2015-07-11 18

我有一张表格,上面给出了每天每小时的人口数量。如何获取人口数最大的行?下面是该表的一个示例

date        hour population
2015-07-11  10  205
2015-07-11  11  390
2015-07-11  12  579
2015-07-11  13  679
2015-07-11  14  699
2015-07-11  15  890
2015-07-11  16  816
2015-07-11  17  970
2015-07-11  18  835
2015-07-11  19  827
2015-07-11  20  753
2015-07-11  21  638
2015-07-11  22  327
2015-07-12  9   33
2015-07-12  10  151
2015-07-12  11  227
2015-07-12  12  419
2015-07-12  13  561
2015-07-12  14  683
2015-07-12  15  799
2015-07-12  16  830
2015-07-12  17  876
2015-07-12  18  844
2015-07-12  19  819
2015-07-12  20  626
2015-07-12  21  526
2015-07-12  22  235
尝试使用以获取每个组的列的最大值:

SELECT date, MAX(population)
FROM foo
GROUP BY date
编辑:

如果要获得与最大总体值对应的小时数,可以选择:

SELECT foo.*
FROM foo
INNER JOIN 
    (SELECT date, MAX(population) as MaxPop
    FROM foo
    GROUP BY date) max
ON foo.date = max.date
AND foo.population = max.MaxPop

希望有帮助。

MySQL包含排序和限制结果等概念。看看你是否能让这些为你工作。试着使用?我想要每一行的最大人口day@AhmetTanakol编辑你的问题。为你的帖子编一把小提琴。我试过了,但没给我时间。如果我在group by中使用小时,它将显示同一个表,而不是在特定的小时显示每天人口最大值的行