Obtendo dados de várias tabelas em uma única linha enquanto concatena alguns valores

Estou tentando recuperar dados de tabelas e combinar várias linhas em uma única coluna, sem repetir nenhuma informaçã

Tenho as seguintes tabelas: perfil, qualificação, projeto

Profile

pro_id  surname       firstname   
------  -------       ----------
   1    John          James           
   2    King          Fred        
   3    Luxury-Yachts Raymond

Qualification

pro_id  Degree   School               Year
------  ------   ------               -----
   1    MBA      Wharton university   2002        
   1    LLB      Yale University      2001    
   2    BSc      Covington University 1998
   2    BEd      Kellog University    1995

Projects

pro_id  Title                         Year
------  ------                        ------   
   1    Social Networking             2003        
   1    Excavation of aquatic debris  2007    
   2    Design of solar radios        1992
   2    Development of expert systems 2011

Eu quero recuperar todas as informações de cada pessoa, com cada pessoa aparecendo apenas uma vez no resultado. As informações sobre qualificações e projetos devem estar em sua própria coluna (uma coluna para qualificações e outra para projetos), separadas por vírgulas. Por exemplo, os resultados para os dados de amostra acima devem ser:

1  John James             MBA Wharton university 2002, LLB Yale University 2001                     Social Networking 2003, Excavation of aquatic debris 2007, Design of Solar panels 2008
2  King Fred              BSc Covington University 1998, BEd Kellog University 1995, Msc MIT 2011   Design of solar radios 1992, Development of expert systems 2011
3  Raymond Luxury-Yachts

Atualmente, tenho a consulta:

SELECT pro_id,
       surname,
       firstname,
       group_concat(degree,school,year) AS qual,
       concat(Title,year) AS work
FROM profile,
       LEFT JOIN qualification
           ON qualification.pro_id = profile.pro_id 
       JOIN projects
           ON projects.pro_id = profile.pro_id 
GROUP BY pro_id

Para os dados de amostra, esta consulta resulta em:

1  John James MBA  Wharton university 2002,  Social Networking 2003 
1  John James LLB  Yale University 2001, Excavation of aquatic debris 2007
1  John James MBA  Wharton university 2002,  Social Networking 2003, Excavation of aquatic debris 2007
etc

Nota: Raymond Luxury-Yachts não está presente no resultado atua

Não quero registros de resultados duplicados. Além disso, se o sobrenome não tiver nenhuma entrada na tabela de qualificação e projetos, desejo que a consulta retorne o nome e exiba um campo vazio na tabela de qualificação e projetos em vez de omitê-los por complet

questionAnswers(6)

yourAnswerToTheQuestion