select *
from (select min(b.kpid) SKPID, max(b.kpid) EKPID
from (select a.kpid,
to_number(REGEXP_REPLACE(kpid, '[^0-9]', '') - rownum) cc
from (select *
from kpda
where kquser='CSKQ'
and KHID_LK='111111'
order by kpid) a) b
group by b.cc)
order by SKPID
ps:regex_reppace 方法主要是为了处理 部分字段还有特殊字符