Я должен применить определенное преобразование fn (аргумент)
. Здесь аргумент
равен значению
, но не тогда, когда он отрицательный. Когда вы получаете первое отрицательное значение
, вы «ждете», пока оно не суммируется с последовательными значениями, и эта сумма станет положительной. Затем вы выполняете fn (аргумент)
. См. Таблицу, которую я хочу получить:
value argument --------------------- 2 2 3 3 -10 0 4 0 3 0 10 7 1 1
Я мог бы просуммировать все значения и применить к сумме fn
, но fn
может отличаться для разных строк, и это важно знать номер строки для выбора конкретной fn.
Как и нужно, решение Postgres SQL выглядит как подходящие оконные функции, но у меня еще недостаточно опыта, чтобы написать выражение, которое это делает. Фактически, я, к сожалению, новичок в "мышлении в sql". Я полагаю, что это можно легко сделать императивным способом, но я пока не хочу писать хранимую процедуру.