PL/SQL函数学习笔记:decode函数

decode是非常强大的函数,使用的情况非常多。比如判断除数是否为0

decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)
IF 条件=值1 THEN

  RETURN(翻译值1)

  ELSIF 条件=值2 THEN

  RETURN(翻译值2)

  ......

  ELSIF 条件=值n THEN

  RETURN(翻译值n)

  ELSE

  RETURN(缺省值)

  END IF

比如在计算比率的情况下,当除数为0时,设定返回值为0

select decede(num,0,0,validnum/num) rate from dual

这里,比率的计算,一般和round,to_char,trim一起使用

比如

select trim(to_char(round(decode(num,0,0,validnum/num),2),'9999990.99')) rate from dual

计算比率,然后返回保留两位小数的结果

你可能感兴趣的:(PL/SQL函数学习笔记:decode函数)