From: | Nahum Castro <nahumcastro(at)gmail(dot)com> |
---|---|
To: | Anthony Sotolongo <asotolongo(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Cálculo de porcentaje de respuesta a correo |
Date: | 2022-04-22 04:44:34 |
Message-ID: | CABqArLjdM8eZ=o+c-JfzT4=sq5iFwuEkX0XJn=Nx1_BaO56VCQ@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
MIL GRACIAS!
Las funciones window no las conocía. Están super funcionales.
Nahum
El jue, 21 abr 2022 a la(s) 20:32, Anthony Sotolongo (asotolongo(at)gmail(dot)com)
escribió:
> Hola Najum, puedes usar SUM como WINDOW FUNCTION con un FRAME (RANGE
> BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
>
>
> Puedes probar con algo como esto y ajustarlo para tu caso
>
> select *,
> sum(ventas_num) over ( order by timestamp RANGE BETWEEN UNBOUNDED
> PRECEDING AND CURRENT ROW)/
> nullif(sum(cliente_num) over ( order by timestamp RANGE BETWEEN UNBOUNDED
> preceding AND CURRENT ROW),0)
> from tu_tabla
>
>
> Saludos
>
>
> On 21-04-22 21:14, Nahum Castro wrote:
>
> Saludos a tod(at)s
>
> Tengo la siguiente estructura
> timestamp correo ventas_num cliente_num porcentaje de respuesta
> 1 envio_ventas 1 0
> 2 envio_ventas 1 0
> 3 resp_cliente 0 1
> 4 envio_ventas 1 0
> 5 resp_cliente 0 1
> 6 resp_cliente 0 1
> 7 envio_ventas 1 0
>
> Y tengo un problema para generar la siguiente estructura:
> timestamp correo ventas_num cliente_num
>
> porcentaje de respuesta
> 1 envio_ventas 0 0 sum(ventas_num)/sum(cliente_num) '0/0 null
> 2 envio_ventas 0 0 sum(ventas_num)/sum(cliente_num) '0/0 null
> 3 resp_cliente 0 1 sum(ventas_num)/sum(cliente_num) '0/1 0
> 4 envio_ventas 1 0 sum(ventas_num)/sum(cliente_num) 1/1 1
> 5 resp_cliente 0 1 sum(ventas_num)/sum(cliente_num) 1/2 0.5
> 6 resp_cliente 0 1 sum(ventas_num)/sum(cliente_num) ‘1/3 0.333333333333333
> 7 envio_ventas 1 0 sum(ventas_num)/sum(cliente_num) 2/3 0.666666666666667
>
> Tengo que ir sumando las columnas, solo tomando en cuenta las anteriores y
> no las totales, trate de hacerlo usando rollup, pero no me funciono. El
> problema es que inicio a contar hasta que el cliente me responde y no
> antes, por eso los primeros envíos de ventas se cuentan como cero.
>
> Alguna vez vi hace como ocho años en la lista algo similar, pero no lo
> encontré :(.
>
> Si me pudieran orientar por dónde entrarle al problema se los agradecería
> mucho.
>
> Saludos cordiales.
> Nahum.
>
>
> --
> *Nahum Castro González*
> Blvd. Perdigón 214, Brisas del Lago.
> CP 37207
> León, Guanajuato, México
>
>
--
*Nahum Castro González*
Blvd. Perdigón 214, Brisas del Lago.
CP 37207
León, Guanajuato, México
From | Date | Subject | |
---|---|---|---|
Next Message | Fernando Siguenza | 2022-05-03 03:40:42 | Ejecutar sql dinamico |
Previous Message | Anthony Sotolongo | 2022-04-22 01:32:44 | Re: Cálculo de porcentaje de respuesta a correo |