天天看点

Oracle decode函数学习

基本语法

语法一

decode(条件,值1,返回值1,值2,返回值2,...,值n,返回值n)
           

解释

如果条件=值1,则结果为返回值1,

如果条件=值2,则结果为返回值2,

。。。

如果条件=值n,则结果为返回值n

语法二

decode(字段或字段的运算,值1,值2,值3)
           

解释

当字段或字段运算的值等于值1时,函数返回值为值2,否则为值3

这里的值1,值2,值3也可以是表达式

使用场景

比较大小

注意:sign()函数根据某个值是0,正数,负数,分别返回0,1,-1

SQL语句中的使用

decode函数与一系列嵌套的if-then-elsif语句相似

order by 对字符串进行特定的排序

例如:

表table_subject中有subject_name列,要求按照语文,数学,英语的顺序排列