W SQL Server 2005 zrobiłbym to za pomocą skorelowanego podzapytania:
select dummy_id, date_registered, item_id, quantity, price,
(select sum(quantity)
from t t2
where t2.item_id = t.item_id and
t2.date_registered <= t.date_registered
) as cumulative
from table t;
Jeśli rzeczywiście chcesz dodać to do tabeli, musisz zmienić tabelę, aby dodać kolumnę, a następnie dokonać aktualizacji. Jeśli tabela zawiera wstawki i aktualizacje, musisz dodać wyzwalacz, aby była aktualna. Przejście przez zapytanie jest zdecydowanie łatwiejsze.
W SQL Server 2012 możesz to zrobić za pomocą składni:
select dummy_id, date_registered, item_id, quantity, price,
sum(quantity) over (partition by item_id order by date_registered) as cumulative
from table t;