select a.groupno,b.name,a.leve,b.grade from
(select groupno,max(leve)as leve from 你的表名 group by groupno) a
inner join
(select groupno,name,leve,grade from 你的表名) b
on
a.groupno = b.groupno and a.leve =b.leve
order by a.groupno asc
楼主我这条语句是查询每一个分组中leve 最高的人,如果你要按条件Grade=3时,可以加在inner join 子查询的b 表查询语句后面跟上 where grade =3 如下。
(select groupno,name,leve,grade from 你的表名 where grade =3 ) b
希望对你有用。
select a.groupno,a.name, a.level, a.grade
from 表名 a, (select groupno,max(level) as level from 表名 where grade =3 group by groupno) b
where a.groupno = b.groupno and a.level = b.level
order by a.groupno