对最大工资的不同名称的SQL查询

时间:2016-03-21 08:33:10

标签: sql

1 shreya cpn 10000
2 shreya cpna 100000
3 shreya cpnaa 20000
4 preeti buld 30000
5 preeti bulda 20000
6 preeti buldan 25000
1 sushil mal 30000
1 sushil male 10000
1 sushil maleg 15000
9 abc ada 15000
这是我的表...... 这是我的查询select * from stu where sal in (select MAX(sal)from stu group by name) 和ans是 -

2 shreya cpna 100000
4 preeti buld 30000
1 sushil mal 30000
1 sushil maleg 15000
9 abc ada 15000
10 sss sfsfs 12000

它显示2 sushil ...我想只有不同的名字...... plzz给我建议......

1 个答案:

答案 0 :(得分:0)

如果您在输出中只需要namesalary列,则只需尝试以下代码:

select name, MAX(sal) from stu group by name

您可以在要分组的选择中使用列,也可以使用具有聚合函数的其他列。

如果您需要所有其他列,则必须使用join

select s1.* 
from stu s1
join (select name, MAX(sal) as sal from stu group by name) as s2
on s1.name = s2.name and s1.sal = s2.sal