Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 带有GROUPBY子句的Sql查询_Mysql_Greatest N Per Group - Fatal编程技术网

Mysql 带有GROUPBY子句的Sql查询

Mysql 带有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

我已经获取了下面给定的数据,现在我希望记录的最大值(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
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:更新..现在检查