Я решил свою проблему, разбив 3 возможных фрагмента на CTE и применив их к частям, которые я не хотел исключать.
Select *
from (values('Personnel','Full-Time')) a(Cat,SubCat)
outer apply cte_FT
union all
Select *
from (values('Personnel','Part-Time')) a(Cat,SubCat)
outer apply cte_PT
union all
Select *
from (values('Non-Personnel','')) a(Cat,SubCat)
outer apply cte_NP
Результат этого набора данных позволяет построить вышеупомянутый отчет.