oracle中decode函数用法及应用
用法
1、decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值)
相当于if else 那种方式。
2、decode(字段或字段的运算,值1,值2,值3)
当字段或字段的运算得到的值,等于值1的时候,返回值2,否则返回值3。
实例
1、select deptid,decode(type, 'CJ ', count, '0') as CJ from a。
2、select * from dept order by decode(depttype 'a', 1, 'b', 2, , 'c',3)
用于排序。
3、有这样一个场景
原始数据:
名称 | 数量 | 性别 |
---|---|---|
三年1班 | 男 | 24 |
三年1班 | 女 | 21 |
三年2班 | 男 | 16 |
三年2班 | 女 | 20 |
想要变成的效果: |
名称 | 男 | 女 |
---|---|---|
三年1班 | 24 | 21 |
三年2班 | 16 | 20 |
这种我们可以先用decode来进行改变,然后sum
decode(性别,‘男’,数量,0) as 男。
这样形成多条记录。sum即可。
作者:经典鸡翅
微信公众号:经典鸡翅
如果你想及时得到个人撰写文章,纯java的面试资料或者想看看个人推荐的技术资料,可以扫描左边二维码(或者长按识别二维码)关注个人公众号)。