How to join same department with multiple staff?
Do you mean you want to left join but then show single departments with the staff concatenated?

SELECT d.departName, GROUP_CONCAT(s.fullName SEPARATOR ' &lt;,&gt; '), GROUP_CONCAT(s.email SEPARATOR ' &lt;,&gt; ')
from staff s 
left join department d on s.departCode = d.departCode 
left join country c on s.countryCode = c.countryCode 
where c.countryCode = 2
group by d.departName