Oracle的SQL怎样对字段值进行数据分段

作者:iamlaosong

数据分析中用SQL取数时需要对邮件重量进行分段,简单的分段直接使用条件语句就可以了,例如:

select 
case
when jihezl <2 then '轻件'
when jihezl>=2 and jihezl <20 then '重件'
else '超重件'
end as zlqj,

也可以用decode函数嵌套完成这个功能,不过比较麻烦,也不直观,如上面的分段:

select 
decode(sign(jihezl-2),-1,'轻件',0,'重件',
    1,decode(sign(jihezl-20),-1,'重件',0,'超重件',1,'超重件')) as zlqj,

很多情况下,用取整函数也可以达到分段的目的,或者配合上面的条件语句一起使用,如:

select 
case when jihezl <20 then FLOOR(jihezl) else 20 end as zlqj,

这个语句将20kg以内的分成0-19段,20以上都是20段。


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值