Mysql 带有GROUPBY子句的Sql查询
我已经获取了下面给定的数据,现在我希望记录的最大值(Sum1)按pid分组,但也要提到该最大值的cnameMysql 带有GROUPBY子句的Sql查询,mysql,greatest-n-per-group,Mysql,Greatest N Per Group,我已经获取了下面给定的数据,现在我希望记录的最大值(Sum1)按pid分组,但也要提到该最大值的cname pid cname sum1 23 Abc 946 23 Xyz 920 18 Lmn 900 18 Pqr 1500 现在我想成为 23 Abc 946 18 Pqr 1500 使用以下命令: select pid, cname, sum1 from Table1 wher
pid cname sum1
23 Abc 946
23 Xyz 920
18 Lmn 900
18 Pqr 1500
现在我想成为
23 Abc 946
18 Pqr 1500
使用以下命令:
select pid, cname, sum1
from Table1
where (pid,sum1) in (select pid,max(sum1) from table1 group by pid)
您可以通过使用同一个表中sum1的最大值进行自连接来实现
select t1.pid, t1.cname, t1.sum1
from Table1 t1
join (SELECT MAX(sum1) sum1,pid from Table1 group by pid) t2
on(t1.pid=t2.pid and t1.sum1 =t2.sum1)
@AzizShaikh:更新..现在检查