同伴的平均薪水取决于员工本身(也就是说,对于每个员工,同伴将是与员工在同一部门的所有人,但不包括员工本人)。
我已经尝试过一些狗屎:
select avg(salary.sal),emp.id,emp.dept from emp join salary on (emp.id <> salary.id ) group by emp.dept, emp.id;
但输出不正确。
答案 0 :(得分:1)
您必须自行加入表格才能在同一部门获得员工的同事,然后加入表格薪水:
select
e.id,
e.dept,
avg(s.sal) averagesalary
from emp e
inner join emp ee on ee.dept = e.dept and ee.id <> e.id
inner join salary s on s.id = ee.id
group by e.id, e.dept