Mas isto tem algum sentido?

É um view onde lista a soma das entradas e saidas por mês, o problema está quando não há entrada ou saídas.

Está complicado mesmo, mas não posso mudar as tabelas.

CREATE OR REPLACE VIEW public."Extrato" (
   "Tipo",
   "Referencia",
   "Ano",
   "Valor_Mes",
   "Mes",
   "Valor_Parcial_Entrada",
   "Valor_Parcial_Saida")
AS
SELECT    'Entrada'::text AS "Tipo",
               p."Referencia",
               p."Ano",
               p."Valor_Mes",
               p."Mes",
sum(p."Valor_Mes") OVER ( ORDER BY p."Mes") AS "Valor_Parcial_Entrada",
               0 AS "Valor_Parcial_Saida"

                   FROM (

                               SELECT   "Tabela_Consumo"."Referencia",
                                             "Tabela_Consumo"."Ano",
sum("Tabela_Consumo"."Valor") AS "Valor_Mes",
                                             "Tabela_Consumo"."Mes"
                              FROM     "Tabela_Consumo"
GROUP BY "Tabela_Consumo"."Referencia", "Tabela_Consumo"."Ano"
                           ORDER BY "Tabela_Consumo"."Referencia"
                   ) p

UNION

SELECT    'Saida'::text AS "Tipo",
               q."Referencia",
               q."Ano",
               q."Valor_Mes",
               q."Mes",
               0 AS "Valor_Parcial_Entrada",
sum(q."Valor_Mes") OVER ( ORDER BY q."Mes" ) AS "Valor_Parcial_Saida"

                   FROM (

                               SELECT     "Tabela_Despesa"."Referencia",
                                               "Tabela_Despesa"."Ano",
sum("Tabela_Despesa"."Valor") AS "Valor_Mes",
                                               "Tabela_Despesa"."Mes"
                               FROM     "Tabela_Despesa"
GROUP BY "Tabela_Despesa"."Referencia", "Tabela_Despesa"."Ano"
                            ORDER BY "Tabela_Despesa"."Referencia"
                       ) q

ORDER BY "Mes", "Tipo";





Osvaldo
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a