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即可。

posted @ 2019-07-15 11:16  经典鸡翅  阅读(3518)  评论(0编辑  收藏  举报