SQL
Calculate Cumulative Sum (Running Total) Using Window Functions
Discover how to compute a running total or cumulative sum over a set of rows in SQL, useful for financial analysis, sales trends, and progress tracking.
SELECT
order_date,
amount,
SUM(amount) OVER (ORDER BY order_date) AS running_total_amount
FROM
orders
ORDER BY
order_date;
How it works: This query uses a window function, SUM(...) OVER (...), to calculate a running total. For each row, SUM(amount) OVER (ORDER BY order_date) computes the sum of the 'amount' for all rows up to and including the current 'order_date', based on the specified order. This provides a cumulative sum over a sequence of data, which is highly useful for tracking progress, financial balances, or sales trends over time.