what about
select t1.c, t1.num, t2.num, t3.num
from
(select contributor as c, count(*) as num
from table
where medal = 1
group by contributor
) as t1,
(select contributor as c, count(*) as num
from table
where medal = 2
group by contributor
) as t2,
(select contributor as...