postgresql
Window Function Running Total
A daily revenue table turned into a running total using SUM() OVER (ORDER BY day). Lineage shows the projected running_total column tracing back to revenue.
The lineage
The SQL
CREATE TABLE daily_revenue (
revenue_day DATE,
revenue NUMERIC(12,2)
);
CREATE VIEW v_revenue_running AS
SELECT
revenue_day,
revenue,
SUM(revenue) OVER (ORDER BY revenue_day ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS running_total,
AVG(revenue) OVER (ORDER BY revenue_day ROWS BETWEEN 6 PRECEDING AND CURRENT ROW) AS rolling_7d_avg
FROM daily_revenue;
What the lineage shows
- running_total is sourced from daily_revenue.revenue with an UNBOUNDED PRECEDING frame.
- rolling_7d_avg uses a 7-row sliding window over the same column.
- Lineage treats window expressions as derived projections of their input columns.