Существует несколько способов решить эту группу
с помощью
select e.id,
e.name,
e.position_id,
e.phone,
count(*) as repairs_count
from employee e
left outer join repairs r on e.id = r.employeeid
group by e.id, e.name, e.position_id, e.phone
ПРИМЕЧАНИЕ. Если вы хотите исключить сотрудников, не имеющих ремонта, просто замените левое соединение внутренним объединением
или по подзапросу
select e.id,
e.name,
e.position_id,
e.phone,
(select count(1) from repairs r where r.employeeid = e.id) as repairs_count
from employee e
Я бы выбрал первый вариант, так как оптимизатору будет проще использовать индексы, и будет проще исключать сотрудников, не имеющих ремонта, если вы захотите, чтобы