# DECODE(control_value,value1,result1[,value2,result2…] [,default_result])

将control_value数值与后面的一系列的偶序列数值相比较,以决定返回值。

# 参数

control_value 必需,期望比较的值,可以是表达式。

value1 必需,第一个比较值。

result1 必需,如果control_value等于第一个比较值,则返回此参数值。

value2 第二个比较值。

result2 如果control_value等于第二个比较值,则返回此参数值。

valueN 第N个比较值。

resultN 如果control_value等于第N个比较值,则返回此参数值。

default_result 默认值,如果前面偶数序列值都不能匹配,则返回此参数值,如果没有此参数,则返回null。

需要注意的是:所有返回值类型必须相同。

# 示例

  • decode( x , 1 , 'x is 1', 2 ,'x is 2', 'others')
    • 当x等于1时,则返回'x is 1'。
    • 当x等于2时,则返回'x is 2'。
    • 否则,返回'others'。
  • decode( x , 1 , 'x is 1', 2 ,'x is 2', null, 'nulls')
    • 当x等于1时,则返回'x is 1'。
    • 当x等于2时,则返回'x is 2'。
    • 当x为null,则返回'nulls'。
    • 否则,返回null。
是否有帮助?
0条评论
评论