根据条件price>0,获取id连续的数据

根据条件获取一组id是连续的数据        

--获取一组id连续的数据,
with aa as(
	select '2020-01-01'pdate,1 id,'100'price from dual
	union all
	select '2020-01-01'pdate,2 id,'200'price from dual
	union all
	select '2020-01-01'pdate,3 id,'-300'price from dual
	union all
	select '2020-01-01'pdate,4 id,'-400'price from dual
	union all
	select '2020-01-01'pdate,5 id,'500'price from dual
	union all
	select '2020-01-01'pdate,6 id,'600'price from dual
	union all
	select '2020-01-01'pdate,7 id,'700'price from dual
	union all
	select '2020-01-01'pdate,8 id,'800'price from dual
)
select pdate,min(id),max(id) from(
	select pdate,id,price,rownum,id-rownum x from aa
	where price>0
	order by pdate,id
)
group by pdate,x

原数据:要将框起来的数据作为两组

price>0的数据:

最终效果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值