
Почему накопительная сумма в SQL врёт
Оконные функции часто дают результат, который выглядит правильным: итоговая сумма сходится, запрос проходит проверку, а ошибка проявляется только спустя время. Проблема скрывается в деталях работы рамки окна — без явной настройки СУБД сама выбирает правила расчёта, из-за чего одинаковые строки могут получать неожиданные значения. Разберём, как найти причину такого поведения в PostgreSQL, чем отличаются ROWS, RANGE и GROUPS, и какие настройки помогают получить предсказуемый результат в рабочих запросах. Читать далее