Po prostu użyj agregacji warunkowej:
select name, sum(type = 0) as count_0, sum(type = 1) as count_1
from t
group by name;
Wykorzystuje to funkcję MySQL, która traktuje wartości logiczne jako liczby w kontekście numerycznym, gdzie 0 oznacza fałsz, a 1 oznacza prawdę. Dlatego zsumowanie wartości zlicza, ile razy wyrażenie jest prawdziwe.