Вероятно можете да направите това с подзаявка и след това да генерирате и агрегирате тези данни. Опитайте нещо подобно на това:
select week,
count(*) as total,
sum(technical) as technical,
sum(non_technical) as non_technical)
from(
select week,
case(type) when 'Technical' then 1 else 0 END as technical,
case(type) when 'Non-Technical' then 1 else 0 END as non_technical
) as data
GROUP BY week