Re: Ayuda con armar saldos

From: "Guillermo E(dot) Villanueva" <guillermovil(at)gmail(dot)com>
To: jorgebarzola(at)gmail(dot)com
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Ayuda con armar saldos
Date: 2018-11-02 12:40:12
Message-ID: CANm+PCAFR8Cq4bbvW=Gq+-J2iFf+QXTHtwcPYK=y71tre+U2Ug@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Está probado y anda:
create function fntasas() returns
table (tid integer, ttasa decimal(10,8), lx decimal(10,8), dx
decimal(10,8)) as
$$
declare
lx1 decimal(10,8):= 1.0;
dx1 decimal(10,8):= 0.0;
lr_registro RECORD;
begin
FOR lr_registro IN select id,tasa from tasas ORDER BY id LOOP
tid := lr_registro.id;
ttasa := lr_registro.tasa;
lx := lx1;
dx := ttasa * lx1;
return next;
lx1:= lx - dx;
END LOOP;
return;
end;
$$
LANGUAGE plpgsql;

llamás a la función con
select * from fntasas();

El mar., 30 oct. 2018 a las 15:58, Jorge Barzola (<jorgebarzola(at)gmail(dot)com>)
escribió:

> Hola estimados:
>
> Necesito armar el siguiente cuadro:
>
> id | tasa | lx | dx
> ------------------------------------------------------------
> 65 | 0.013670563 | 1.00000000 | 0.01367056
> 66 | 0.015125920 | 0.98632944 | 0.01491914
> 67 | 0.016741070 | 0.97141030 | 0.01626245
> 68 | 0.018533249 | 0.95514785 | 0.01770199
> 69 | 0.020521473 | 0.93744586 | 0.01923777
> 70 | 0.022726715 | 0.91820809 | 0.02086785
>
> - Los datos de id y tasa son fijo (estan en una tabla).
> - Siempre en la columna lx en el primer registro sera 1.00000000
> - La columna dx se obtiene de tasa * lx
> - En la columna lx, apartir del segundo registro el resultado se obtiene
> de (lx - dx) de un registro anterior.
>
> Alguna idea por favor.
>
> Saludos.
>
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alfredo Guzman Pacherres 2018-11-02 21:51:38 RE: Tamaño de Campo UUID
Previous Message Carlos Edward Grajales Marmolejo 2018-11-01 22:07:09 Re: Tamaño de Query