Нет никаких оснований для left join
от salary
до employee
.Предположительно, каждый employee_id
в salary
относится к действующему сотруднику.Таким образом, это должно делать то, что вы хотите:
select s.employee_id, sum(s.salary) as salary
from salary s
group by s.employee_id;
Если вы хотите, чтобы всех сотрудников, даже тех, кто не находится в таблице salary
, тогда подходит внешнее объединение -но employee
должно быть первым:
select e.id_employee, sum(s.salary) as salary
from employee e left join
salary s
on s.employee_id = e.id_employee
group by e.id_employee;
Сотрудники, не входящие в salary
, будут иметь значение NULL
.
Обратите внимание, что условие group by
в этом запросе включеноemployee
, первая таблица в left join
.