введите описание изображения здесь
Мне нужно написать запрос, который считает число часто транзакции клиентов превышают 250 фунтов стерлингов. Кумулятивное сложение до тех пор, пока сумма не превысит 250, затем сбрасывается и начинается со следующей строки, пока она не превысит 250 и так далее. Эта функция может быть реализована с использованием ключевых слов Teradata «RESET WHEN», но я должен создать запрос, состоящий только из ANSI SQL SYNTAX. Кто-нибудь может с этим помочь?
SUM(sales) OVER (
PARTITION BY region
ORDER BY day_of_calendar
RESET WHEN sales < /* preceding row */ SUM(sales) OVER (
PARTITION BY region
ORDER BY day_of_calendar
ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING)
ROWS UNBOUNDED PRECEDING
)
1: https://i.stack.imgur.com/lu4Jp.png Это образец ввода клиента введите здесь описание изображения И вот результат. Каждый раз, когда общая сумма расходов клиента превышает 250, я должен снова суммировать от 0 и найти день, в который клиент превысил 250 долларов США.