Buen dia, usa la funcionalidad LAG de las window functions:
https://www.postgresql.org/docs/current/functions-window.html

Saludos

El vie., 31 may. 2019 a las 12:22, José Vicente Zahonero García (<
joviz...@hotmail.com>) escribió:

> Hola de nuevo, tengo un procedimiento en Firebird que recorre una tabla
> comparando un registro con el inmediatamente posterior y que devuelve la
> mayor diferencia entre dos registros consecutivos. No sé como
> implementarlo  en PostgreSQL. ¿Puede alguien echarme una mano?. Gracias.
>
>
> CREATE OR ALTER PROCEDURE DIAS_SIN RETURNS (
>         "RESULT" INTEGER
> )
> AS
> DECLARE VARIABLE AUX INTEGER;
> BEGIN
>   AUX    = 0;
>   RESULT = 0;
>   FOR
>     SELECT max(DATEDIFF(DAY FROM DT2.FECHA TO DT1.FECHA))
>   FROM DATOS DT1, DATOS DT2
>   WHERE DT1.SALIDA_NUM = DT2.SALIDA_NUM + 1
>     INTO :AUX
>   DO
>     IF(AUX > RESULT) THEN RESULT = AUX;
>   SUSPEND;
> END
>
>

-- 

[image: logo conexia] <http://conexia.com/>

*Lautaro Palamidessi*
Consultor Técnico DBA
*T:* +5411 5173 6159

[image: facebook conexia] <https://goo.gl/OxO8kd> [image: twitter conexia]
<https://goo.gl/XGpgl3> [image: linkedin conexia] <https://goo.gl/epcLtV>
www.conexia.com <http://conexia.com/>

 [image: line]

Reply via email to