Даже, если ключ не уникальный, можно так:
with
t
as
(
(select 'a' field1, 1 field2 from dual)
union all
(select 'b' field1, 2 field2 from dual)
union all
(select 'c' field1, 3 field2 from dual)
union all
(select 'd' field1, 4 field2 from dual)
union all
(select 'd' field1, 4 field2 from dual)
)
Select rownum, t.*, sum(field2) OVER(ORDER BY rownum) AS nnn
from t