René Nyffenegger's collection of things on the web
René Nyffenegger on Oracle - Most wanted - Feedback -
 

SUM analytic function in Oracle SQL

The sum analytic function sums up all «previous» rows within a partition:
create table sum_example (
  a number,
  b varchar2(10),
  c varchar2(10)
);
insert into sum_example values (  1, 'one'    , 'group 1');
insert into sum_example values (  2, 'two'    , 'group 1');
insert into sum_example values (  3, 'three'  , 'group 1');

insert into sum_example values (  10, 'ten'   , 'group 2');
insert into sum_example values (null, 'null'  , 'group 2');
insert into sum_example values (  30, 'thirty', 'group 2');
insert into sum_example values (  40, 'fourty', 'group 2');
select a, sum(a) over(partition by c order by b) from sum_example;
         A SUM(A)OVER(PARTITIONBYCORDERBYB)
---------- --------------------------------
         1                                1
         3                                4
         2                                6
        40                               40
                                         40
        10                               50
        30                               80

Links

On identifiying «periods of activity» is an example that uses sum.