第一个表名: 班组
班组编号 班组名称
1 A组
2 B组
3 C组
第二个表 :成员
成员编号 班组名称 成员名称 成绩
1 A组 张三 10
2 A组 李四 40
3 B组 王五 50
4 B组 刘一 80
想得出这样一样结果
班组最佳成绩
班组名称 成员名称 成绩
A组 李四 40
B组 刘一 80
C组 null null
成绩都是不同的,不用考虑成绩相同的情况.
------解决方案--------------------
select a.班组名称,d.成员,d.成绩 from [班组] a left join (select * from [成员] b where b.成绩=(select max(成绩) from [成员] c where c.班组名称=b.班组名称 )) d
on a.班组名称=d.班组名称