Le tipologie sono molte?
edit. Avevo pensato a una cosa del genere:
codice:select nome,concat_ws(',',tipo1,tipo2,tipo3) as resoconto from ( select nome, concat('tipo1:',sum(if(tipo="tipo1",1,0))) as tipo1, concat('tipo2:',sum(if(tipo="tipo2",1,0))) as tipo2, concat('tipo3:',sum(if(tipo="tipo3",1,0))) as tipo3 from tabella group by nome ) as tab