Re: Tiempo entre cambio de valores

From: "Guillermo E(dot) Villanueva" <guillermovil(at)gmail(dot)com>
To: ocascante(at)opensoftwarecr(dot)com
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)lists(dot)postgresql(dot)org>
Subject: Re: Tiempo entre cambio de valores
Date: 2021-03-17 19:13:46
Message-ID: CANm+PCD_wtLGUwJ=TAA72vWSc_uKSBiD=7zOBu6NS1Ud=JU-+A@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Danos un ejemplo de unos cuantos valores de la tabla y de la salida que
quieras que tenga tu consulta

El mar, 16 mar 2021 a las 15:40, <ocascante(at)opensoftwarecr(dot)com> escribió:

> Hola Antonio y Juan,
>
> Les explico un poco más, yo envío desde un dispositivo el siguiente
> registro:
>
> <timestamp> <device ID > <errorcode>
>
> solamente tres campos donde se registra un error perteneciente a un device
> id, el timestamp es automático de postgresql.
>
> Entonces yo necesito un sql que me calcule el tiempo en que tardo cada
> error en cambiar. Es decir, cuanto tiempo estuvo en error 1, cuanto en
> error 2, etc.
>
> Saludos.
>
> Anthony Sotolongo <asotolongo(at)gmail(dot)com> escribió:
>
> > Cierto Juan..., por algun motivo interpreté que hacia update de
> > atributo Estado
> >
> >
> > Saludos
> >
> > On 3/5/21 9:49 AM, Juan José Santamaría Flecha wrote:
> >>
> >> On Fri, Mar 5, 2021 at 4:29 AM Anthony Sotolongo
> >> <asotolongo(at)gmail(dot)com <mailto:asotolongo(at)gmail(dot)com>> wrote:
> >>
> >> Hola, si en el atributo Time guardas el momento(timestamp) en que
> >> cambió
> >> de estado, puedes implementar un mecanismo de trigger que
> >> registre, el
> >> cambio de estado y el tiempo que estuvo, en otra tabla, o también
> >> puedes implementar algun otro mecanismo de versionado de registros y
> >> calcular la diferencia de tiempo.
> >>
> >> > Existe algún sql donde yo pueda ver cuanto tiempo tiene cada
> >> valor? Es
> >> > decir, cuanto tiempo estuvo en 0 hasta pasar a 1, cuanto a 1 hasta
> >> > pasar a 0.
> >>
> >>
> >> Juraría que la información que quieres sacar es:
> >>
> >> select
> >> Dispositivo,
> >> Time,
> >> Estado,
> >> coalesce(Time - lag(Time) over(partition by Dispositivo order by
> >> Time), '0 day'::interval) as cambio
> >> from tabla_iot;
> >>
> >> Un saludo,
> >>
> >> Juan José Santamaría Flecha
> >>
>
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message listas 2021-03-18 11:19:51 Re: Tiempo entre cambio de valores
Previous Message ocascante 2021-03-16 18:40:12 Re: Tiempo entre cambio de valores