1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| create table data
( H number(1)
, ord number(2)
);
insert into data (H, ord)
select 0, 1 from dual union all
select 4, 2 from dual union all
select 1, 3 from dual union all
select 2, 4 from dual union all
select 1, 5 from dual union all
select 3, 6 from dual union all
select 9, 7 from dual union all
select 1, 8 from dual union all
select 1, 9 from dual union all
select 0, 10 from dual union all
select 0, 11 from dual union all
select 3, 12 from dual;
select H
, 1 + sum(H-1) over(order by ord asc) as I
from data
order by ord asc;
H I
-- --
0 0
4 3
1 3
2 4
1 4
3 6
9 14
1 14
1 14
0 13
0 12
3 14 |
Partager