sql >> Base de Datos >  >> RDS >> PostgreSQL

RANGO PRECEDENTE solo se admite con SIN LÍMITES

Sí... Las funciones de ventana de PostgreSQL aún no implementan rangos.

He tenido muchas situaciones en las que habrían sido útiles, pero es mucho trabajo implementarlas y el tiempo es limitado.

Deberá usar una combinación izquierda sobre generate_series (y, si corresponde, agregación) para convertir el rango en una secuencia regular de filas, insertando filas nulas donde no hay datos y combinando múltiples datos dentro de un segundo en un solo valor donde hay múltiples valores.

Luego haces un (ROWS n PRECEDING ...) ventana sobre los datos agregados y unidos a la izquierda para obtener el promedio móvil.