How about using a UNION ALL
Something like
select COUNT(*)Branch_Name
FROM (
SELECT *
FROM #CAT1
UNION ALL
SELECT *
FROM #CAT2
SELECT *
FROM #CAT3
SELECT *
FROM #CAT4
) t