ハロの外部記憶インターフェイス

そろそろ覚える努力が必要かも…

累積合計を計算する

  • sum(カラム) over (partition by グループ1,グループ2 order by 累積順)
    1. partition byでグループ単位でカラムの合計を取得
    2. order byで指定するカラムの順番で合計を累積する

select CA1, CA2, sum(CLM1) over (partition by CA1, CA2 order by CLM2)
from (
select 1 CLM1, 1 CLM2, 'A' CA1, 'B' CA2 from dual;
union all
select 1 CLM1, 2 CLM2, 'A' CA1, 'B' CA2 from dual;
union all
select 1 CLM1, 3 CLM2, 'A' CA1, 'C' CA2 from dual;
union all
select 1 CLM1, 4 CLM2, 'A' CA1, 'C' CA2 from dual;
union all
select 1 CLM1, 5 CLM2, 'A' CA1, 'C' CA2 from dual;
)

  • >

1: A B 1
2: A B 2
3: A C 1
4: A C 2
5: A C 3