Преглед на вашия примерен набор от данни, ако type,extra
са ограничени, т.е. type може да има само (1,2), а extra може да има само (0,2), можете да направите това, като използвате израз в сума, това ще доведе до 0 или 1 въз основа на резултата от израза и можете да имате своя пребройте съответно
SELECT
user_id,
SUM(`type`=1 AND `extra`=0) one_noextra,
SUM(`type`=1 AND `extra`=2) one_twoextra,
SUM(`type`=2 AND `extra`=0) two_noextra,
SUM(`type`=2 AND `extra`=2) two_twoextra
FROM Table1
GROUP BY user_id