oracle中的decode函数

来源:互联网 发布:淘宝关键词重复有用吗 编辑:程序博客网 时间:2024/05/20 06:41

decode函数的用法解释
1)decode(条件,A,B,C) 相当于 if 条件=A then B else C
2)decode(条件,A, B, C , D, E, F, G) 相当于
if 条件 = A then B
else if 条件 = C then D,
else if 条件 = E then F ,
else G

1) 只有三个值的时候(其实就是一个条件的时候),A可以是一个字段,或者一个公式
- 当A等于值B的时候,返回值C
- 否则,返回缺省值D


decode(A,值B,值C,缺省值D)

- 使用实例
这里写图片描述
可以看到,这个ACTION_TYPE的字段值都是一些编码,我们如果想要转化为我们好识别的中文,那么就可以使用decode函数了。
这里写图片描述
如上,我们把值为’SEND_ORDER’的都转化为了’派单’, 其他的都转化为了缺省值’评价’

2) 有多个值的时候(相当于多个条件的时候)
- 当A的值为B时,返回C,
- 当A的值为D时,返回E
- 中间还可以有很多个成对的值
- 最后,当这些条件都不满足的时候,可以返回一个缺省值Z
- 也就是说,除了A和缺省值Z之外,其他中间的值,必须成对出现


decode(A,值B,值C,值D,值E... 缺省值Z)

- 使用实例

这里写图片描述

其实这里的逻辑跟第一种是一样的,只不过我们加的条件变多了。
这里写图片描述

如上,我们就使用decode函数,来对字段的值进行了转化

原创粉丝点击