Предположим, у меня есть таблица ниже
ID SUB_ID YEAR Month Value
A1 A101 1 1 100
A1 A101 1 2 100
A1 A101 2 1 100
A1 A101 2 2 100
B1 B101 1 1 200
B1 B101 1 2 200
B1 B101 2 1 200
B1 B101 2 2 200
B1 B102 2 1 300 (So this B102 is a new record starting in YEAR 2 MONTH 1)
B1 B102 2 2 300
И я хочу получить текущую сумму для каждого идентификатора, используя последнее общее число. Вывод должен быть:
ID YEAR RUNNING_SUM
A1 1 100
A1 2 100 (for A1, there is no value change or no new SUB_ID, so the sum is always 100)
B1 1 200
B1 2 500 (in YEAR 2, B102 was added)
Как мы можем этого достичь? По сути, я добавляю значение для идентификатора, если появляется новый SUB_ID. Это будет легко в Таблице с использованием вычисления LOD (фиксированный идентификатор)
Вот SQL Fiddle (http://sqlfiddle.com/#! 18 / 95b63d / 1 )
Спасибо!