Mysql 如何选择分组中最大值的记录?

Mysql 如何选择分组中最大值的记录?,mysql,sql,Mysql,Sql,您好,我有一个具有重复id的表,该表将不同的任务与每个任务的完成程度联系起来,如下所示: id date perc taskid 4722 2007-11-08 16:20:14 0.00 3 4724 2007-11-20 15:32:40 25.71 5 4722 2007-11-08 16:20:14 0.00 8 4727 2008-01-29 10:19:

您好,我有一个具有重复id的表,该表将不同的任务与每个任务的完成程度联系起来,如下所示:

id      date                    perc     taskid
4722    2007-11-08 16:20:14     0.00      3
4724    2007-11-20 15:32:40     25.71     5
4722    2007-11-08 16:20:14     0.00      8
4727    2008-01-29 10:19:39     0.00      18
4726    2008-01-28 11:44:50     7.14      13
4726    2008-01-28 11:44:50     34.29     90
4728    2008-02-11 13:14:14     2.86      21
我想返回具有最高百分比的不同id…即

4722    2007-11-08 16:20:14     0.00      3
4724    2007-11-20 15:32:40     25.71     5
4727    2008-01-29 10:19:39     0.00      18
4726    2008-01-28 11:44:50     34.29     90
4728    2008-02-11 13:14:14     2.86      21
我假设将使用
分组,但如何获得每列的最大值

奖金…如果百分比相同,是否可以按最近的
日期进一步排序

更新: 我希望记录中保留百分比最高的taskid?

您在寻找什么

SELECT id, date, MAX(perc) as MAX_PERC
FROM YourTable
GROUP BY id, date
给定id的日期是否可能在条目之间有所不同?还是他们总是在同一天

如果是这样的话,你可能想看看你在找什么

SELECT id, date, MAX(perc) as MAX_PERC
FROM YourTable
GROUP BY id, date
给定id的日期是否可能在条目之间有所不同?还是他们总是在同一天

如果是这样的话,您可能需要查看一下

SELECT id,date,MAX(perc) AS MAX_PERCENT
FROM My_Table
GROUP BY id
你也可以按日期分组。

试试看

SELECT id,date,MAX(perc) AS MAX_PERCENT
FROM My_Table
GROUP BY id
您还可以按日期分组