用法
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即可。
评论(0)