A sintaxe da sua consulta SQL parece ser o principal problema por trás do primeiro erro.
você está fazendo
SELECT-FROM-WHERE-JOIN
, mas a sequência real deve ser SELECT-FROM-JOIN-WHERE
. Sua segunda consulta (que está retornando um valor errado) tem a sintaxe correta, e é por isso que ela retorna algo.
Em segundo lugar, você deve comparar
projects.id
com project_employees.project_id
, não project_employees.employee_id
. Portanto, sua consulta deve ser algo como - SELECT AVG(hours) FROM project_employees
JOIN projects
ON project_employees.project_id = projects.id
WHERE name = 'Washington Avenue Barber';