with a as( select d.emp_no as emp_no,d.dept_no as dept_no, s.salary as salary from dept_emp d join salaries s using(emp_no)), b as( select m.dept_no as dept_no,m.emp_no as emp_no, s.salary as salary from dept_manager m join salaries s using(emp_no)) select a.emp_no as emp_no,b.emp_no as manager_no, a.salary as emp_salary,b.salary as manager_salary from a join b using(dept_no) where a.salary>b.salary
思路分享:
1、创建一个员工薪资表:
部门关系表dept_emp 和 薪水表salaries 连接:
一个员工薪资表:员工编号、部门编号、员工薪水
2、创建一个经理薪资表:
部门经理表dept_manager 和 薪水表salaries 连接:
一个经理薪资表:经理编号、部门编号、经理薪水
3、以上两个表连接:
员工薪水表 和 经理薪水表 通过“部门”连接:
——筛选出“员工薪资>经理薪资”的数据