IntermediateWindow Functions

SUM OVER: running total of orders

The query

SQL
SELECT
  order_date,
  total,
  SUM(total) OVER (
    ORDER BY order_date
    ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
  ) AS running_total,
  COUNT(*) OVER (ORDER BY order_date) AS cumulative_orders
FROM orders
WHERE status = 'completed'
ORDER BY order_date;
Tested against PostgreSQL 16

Note

Running total using window frame ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW.

Tables referenced