sql 取每个部门中的工资最高的人员的信息。
错误的写法:
select empName, deptNo, salary from emp where salary in (select max(salary) salary from emp group by deptNo)
正确的写法:
select a .empName, a. deptNo from emp a join
(select deptNo, max(salary) max_salary from emp group by deptNo) t
on (a .deptNo = t.deptNo and a .salary = t.max_salary) ;
注意一定要别名,不然会报 in field list is ambiguous错误