Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

noblemfd's avatar

How to get manager's manager

I have three tables in mysql database: hr_employees, appraisal_goals and hr_departments

SELECT DISTINCT e.employee_code, concat(e.first_name,' ',e.last_name) Fullname, e.email,
CASE
    WHEN a.line_manager_mid_year_approved = 0 THEN "DRAFT"
    WHEN a.line_manager_mid_year_approved = 1 THEN "AWAITING APPROVAL"
    WHEN a.line_manager_mid_year_approved = 2 THEN "NOT APPROVED"
    WHEN a.line_manager_mid_year_approved = 3 THEN "APPROVED"
ELSE "NOT STARTED"
END AS line_manager_mid_year_approved,d.dept_name, concat(em.first_name,' ',em.last_name) as manager
   FROM hr_employees e
LEFT JOIN appraisal_goals a ON a.employee_id = e.id
INNER JOIN hr_departments d
ON e.department_id = d.id
LEFT JOIN hr_employees em
ON (em.employee_code = e.line_manager_id)
    WHERE e.company_id = 1 
AND e.hr_status = 0 
AND e.validation_status = 'VALID'
AND e.employee_type_code NOT IN (4,5);

Each employee have his own manager

I have been able to get employee's manager using:

concat(em.first_name,' ',em.last_name) as manager

and

LEFT JOIN hr_employees em ON (em.employee_code = e.line_manager_id)

Each manager will also have his own manager.

How do I now get manager's manager (manager of manager)

Thanks

0 likes
0 replies

Please or to participate in this conversation.