oracle 按相同数据连续统计 create table test(id number(20),val number(20))insert into test values(1,5);insert into test v
oracle 按相同数据连续统计
create table test(
id number(20),
val number(20)
)
insert into test values(1,5);
insert into test values(2,10);
insert into test values(3,10);
insert into test values(4,10);
insert into test values(5,6);
insert into test values(6,6);
insert into test values(7,10);
insert into test values(8,10);
select val,count(*) from
(
select id,val,
row_number() over(order by id)-row_number() over(partition by val order by id) x
from test
)
group by val,x
order by min(id);
可根据自己的情况自由发挥
,
