Накопительная сумма — 16.12.25 09:00
Есть цифры, которые сами по себе не информативны.
А есть цифры, которые показывают путь.
Накопительная сумма — это как раз про путь.
Обсудим сегодня эту тему.

А пока подписывайся на мой канал На связи: SQL Там я публикую посты про особенности и нюансы SQL. Этот канал про то, как не бояться баз данных, понимать, что такое JOIN, GROUP BY и почему NULL ≠ 0. Его я веду с нуля подписчиков. Присоединяйся!
Накопительная сумма — это когда мы каждый следующий показатель прибавляем к предыдущим, чтобы увидеть не «что было сегодня», а что получилось к этому моменту.
Если очень по-человечески:
Сегодня + вчера + позавчера + всё, что было раньше.
В SQL это часто называют:
-
running total
-
cumulative sum
Простой пример из жизни
Ты копишь деньги.

Сам по себе столбец «Отложила» — это просто факты.
А вот накопительная сумма отвечает на другой вопрос:
Сколько денег у меня есть к каждому дню?

Именно этот столбец обычно хотят видеть бизнес и пользователи.
Где применяется накопительная сумма
На практике — почти везде:
-
💰 финансы:
доход, расходы, прибыль с начала месяца / года -
📦 склад:
остатки товаров -
📊 аналитика продуктов:
рост пользователей, регистраций, подписок -
📈 KPI и планы:
выполнение плана «на текущий момент» -
🕰 временные ряды:
динамика показателей во времени
Очень часто без накопительной суммы график просто не имеет смысла.
Как считается накопительная сумма в SQL
Современный и правильный способ — оконные функции.
Пример:
SELECT
date,
amount,
SUM(amount) OVER (ORDER BY date) AS running_total
FROM sales;
Что здесь происходит:
-
SUM(amount) — считаем сумму
-
OVER (…) — говорим: не по всей таблице сразу
-
ORDER BY date — накапливаем по времени
Результат:
-
первая строка → просто значение
-
каждая следующая → сумма всех предыдущих + текущая
Если нужно накапливать отдельно (по группам)
Например, по каждому клиенту:
SUM(amount) OVER (
PARTITION BY customer_id
ORDER BY date
)
Теперь у каждого клиента своя накопительная сумма, и они не мешают друг другу.
Примеры задач и важные моменты с NULL публикую в своем канале На связи: SQL.
Подписывайся и изучай новую информацию
