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]