Re: Funciones windows 8.4

From: Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: Edwin Quijada <listas_quijada(at)hotmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Funciones windows 8.4
Date: 2009-07-07 05:46:49
Message-ID: 3073cc9b0907062246o63f1f74fo4cee20a0c399bae3@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

2009/7/7 Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>:
> 2009/7/2 Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>:
>> 2009/7/1 Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>:
>>
>>>  FA   |  12332 |    -6.00 | 106.00
>>>  FA   |  12334 |   -10.00 | 106.00
>>>  FA   |  12369 |   -40.00 |  56.00
>>>  FA   |  12390 |   -10.00 |  56.00
>>
>> Ja! chequeando esto me acorde que cuando el valor que ponemos en la
>> clausula OVER (en este caso OVER (order by fecha)) se repite para esos
>> casos no acumula...
>
> doh!! la solucion era tan simple!!!
>

otra solucion es usar ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW

select tipo, numero, cantidad, sum(cantidad) over (order by fecha rows
between unbounded preceding and current row)
from (select tipo, numero, cantidad * (-1) as cantidad, fecha::date
           from fcmovinv
         where producto = 'PAR00056'
            and fecha::date between '2009-06-01'::date and '2009-06-30'::date
        UNION ALL select 'SI', 0, 200, '2009-05-31'::date) as foo
order by fecha;

aunque hasta que me acostumbre a las funciones windows y la idea de
los frames y los partitions creo que seguire usando el truco anterior
:D

--
Atentamente,
Jaime Casanova
Soporte y capacitación de PostgreSQL
Asesoría y desarrollo de sistemas
Guayaquil - Ecuador
Cel. +59387171157

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jorge Romeo 2009-07-07 07:08:29 RE: [pgsql-es-ayuda] A tortas con la replicación
Previous Message Jaime Casanova 2009-07-07 05:31:28 Re: Funciones windows 8.4