超简单的SQL
一张员工表和一张部门表
员工表(emp)如下:
员工id(emp_id)员工姓名(emp_name)员工工资(emp_gg)部门id(emp_dept_id)
部门表(dept)如下:
部门编号(dept_id)部门名称(dept_name)
求出每个部门中员工最高工资的名单,并且按从高到低进行排序。
我的做法是这样的
select b.dept_name,max(a.emp_gg) from emp as a,dept as b where a.emp_dept_id = b.dept_id group by a.emp_dept_id order by a.emp_gg
但是结果出来以后部门的最高工资的员工资料是出来了,可是为什么没有从高到低进行排序呢?急阿
参考答案:那么改成下面的样子试试:
select b.dept_name,max(a.emp_gg)
from emp as a,dept as b
where a.emp_dept_id = b.dept_id
group by b.dept_name --注意,这里变了
order by max(a.emp_gg) desc