SELECT
('CATEGORIA RECEITA' || ' = ' || (SELECT COUNT(*) FROM categoria_despesa_receita AS cdr WHERE cdr.despesa_receita = 2)) AS tipo,
denominacao AS nome
FROM categoria_despesa_receita WHERE despesa_receita = 2 AND (id_categoria_despesa_receita =:IdCategoriaReceitaNaoObrigatorio OR :IdCategoriaReceitaNaoObrigatorio = -1)
GROUP BY despesa_receita, denominacao

UNION ALL

SELECT
('CATEGORIA DESPESA' || ' = ' || (SELECT COUNT(*) FROM categoria_despesa_receita AS cdr WHERE cdr.despesa_receita = 1)) AS tipo,
denominacao AS nome
FROM categoria_despesa_receita WHERE despesa_receita = 1 AND (id_categoria_despesa_receita =:IdCategoriaDespesaNaoObrigatorio OR :IdCategoriaDespesaNaoObrigatorio = -1)
GROUP BY despesa_receita, denominacao

UNION ALL

SELECT 
('EMPRESAS' || ' = '|| (SELECT COUNT(*) FROM sis_empresa WHERE registro_ativo = 'S')) AS tipo,
(codigo||'-'||nome) as nome
FROM sis_empresa WHERE (id_empresa = :IdEmpresaNaoObrigatorio OR :IdEmpresaNaoObrigatorio = -1)
GROUP BY (codigo||'-'||nome) 

ORDER BY tipo, nome