Bom dia. Minha base de dados é Firibird e funcionou perfeitamente show de bola. Espero que essas funçoes nao fiquem lenta só isso. Muito obrigado Samuel. Vou postar abaixo como ficou o SQL para quem precisar. Abraços e bom natal e fim de ano.
SELECT C.DESCR, SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 1 THEN CP.VLR ELSE 0 END) JANEIRO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 2 THEN CP.VLR ELSE 0 END) FEVEREIRO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 3 THEN CP.VLR ELSE 0 END) MARCO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 4 THEN CP.VLR ELSE 0 END) ABRIL,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 5 THEN CP.VLR ELSE 0 END) MAIO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 6 THEN CP.VLR ELSE 0 END) JUNHO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 7 THEN CP.VLR ELSE 0 END) JULHO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 8 THEN CP.VLR ELSE 0 END) AGOSTO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 9 THEN CP.VLR ELSE 0 END) SETEMBRO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 10 THEN CP.VLR ELSE 0 END) OUTUBRO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 11 THEN CP.VLR ELSE 0 END) NOVEMBRO,
SUM(CASE WHEN EXTRACT(MONTH FROM CP.DATA_EMI) = 12 THEN CP.VLR ELSE 0 END) DEZEMBRO
FROM CONTA_PAG CP
LEFT JOIN CATEGORIA C ON C.COD_CAT = CP.COD_CAT
GROUP BY 1