PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

RANGE PRECEDING è supportato solo con UNBOUNDED

Sì... Le funzioni della finestra di PostgreSQL non implementano ancora gli intervalli.

Ho avuto molte situazioni in cui sarebbero stati utili, ma è necessario molto lavoro per implementarli e il tempo è limitato.

Dovrai utilizzare un join sinistro su generate_series (e, se appropriato, aggregazione) per trasformare l'intervallo in una sequenza regolare di righe, inserendo righe nulle in assenza di dati e combinando più dati entro un secondo in un unico valore in cui sono presenti più valori.

Quindi esegui un (ROWS n PRECEDING ...) finestra sopra i dati aggregati a sinistra per ottenere la media corrente.