select de.dept_no, de.emp_no, max(s.salary) as salary
from dept_emp de innerjoin salaries s
on de.emp_no = s.emp_no
where de.to_date='9999-01-01'and s.to_date='9999-01-01'groupby de.dept_no;
select e.emp_no, (s2.salary - s1.salary) as growth
from employees e
innerjoin salaries s1
on e.emp_no = s1.emp_no and s1.from_date = e.hire_date
innerjoin salaries s2
on e.emp_no = s2.emp_no and s2.to_date = '9999-01-01'orderby growth;
select es.emp_no, ms.emp_no as manager_no, es.salary as emp_salary, ms.salary as manager_salary
from
(select s.emp_no, de.dept_no, s.salary
from salaries s innerjoin dept_emp de
on s.emp_no = de.emp_no and s.to_date='9999-01-01') as es,
(select s.emp_no, dm.dept_no, s.salary
from salaries s innerjoin dept_manager dm
on s.emp_no = dm.emp_no and s.to_date='9999-01-01') as ms
where es.dept_no = ms.dept_no and es.salary > ms.salary;
group by 和 max 的结合自联结应用从查询的结果中查询删除重复记录group by 和 max 的结合统计各个部门最高薪水的员工,联结查询分组之后使用max函数。原题select de.dept_no, de.emp_no, max(s.salary) as salaryfrom dept_emp de inner join salar...