Exibir saldo entre receitas e despesas

17/01/2017

0

Olá, sou novato aqui e estou com um probleminha em gerar uma consulta na qual exiba o 'saldo atual' entre receitas e despesas. Tenho 2 tabelas criadas, uma pra RECEITAS e outra pra DESPESAS. Elas não possuem ligação (foreign key), então usei um UNION pra exibir tudo conforme segue o código abaixo:

select
    AUX.DESCRICAO,
    SUM(AUX.VALOR) AS VALOR
from (
    SELECT
        tb_receita.desc_receita AS DESCRICAO,
        sum(TB_RECEITA.vl_recebido) AS VALOR
    FROM TB_RECEITA
    WHERE tb_receita.data_disponivel BETWEEN :tb_receita.dt_inicial AND :tb_receita.dt_final
    GROUP BY 1

    UNION ALL

    SELECT
        tb_despesa.desc_despesa AS DESCRICAO,
        SUM(tb_despesa.vl_despesa * -1) AS VALOR
    FROM tb_despesa
    WHERE tb_despesa.data_pgto BETWEEN :tb_despesa.dt_inicial AND :tb_despesa.dt_final
    GROUP BY 1
) AUX
GROUP BY 1;


Até aí tudo bem, quando dou um sum(TB_RECEITA.vl_recebido) AS VALOR ele exibe valor da receita, e do mesmo modo acontece no select abaixo do UNION.

Eu preciso listar além do valor de cada receita e de cada despesa, também um valor total que soma todas as receitas e todas as despesas, e depois subtraia das receitas as despesas dentro do período que to passando como parâmetro.

Pra exemplificar, o código do jeito que está exibe da seguinte forma filtrando por determinado período:
DESCRICAO VALOR
GASOLINA -25
INTERNET -99
SALARIO 1500

Precisaria que fosse exibido também o saldo atual que nesse caso seria os 1500 - 25 - 99 = 1376
Vinicius Brustolin

Vinicius Brustolin

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar