数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle数据库Decode()函数的使用方法


发布日期:2020年03月30日
 
Oracle数据库Decode()函数的使用方法

DECODE函数的作用它可以将输入数值与函数中的参数列表相比较根据输入值返回一个对应值函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式当然如果未能与任何一个实参序偶匹配成功则函数也有默认的返回值

DECODE函数的作用它可以将输入数值与函数中的参数列表相比较根据输入值返回一个对应值函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式当然如果未能与任何一个实参序偶匹配成功则函数也有默认的返回值

区别于SQL的其它函数DECODE函数还能识别和操作空值

语法如下

DECODE(control_valuevalueresult[valueresult…][default_result]);

control _value

试图处理的数值DECODE函数将该数值与后面的一系列的偶序相比较以决定返回值

value

是一组成序偶的数值如果输入数值与之匹配成功则相应的结果将被返回对应一个空的返回值可以使用关键字NULL于之对应

result

是一组成序偶的结果值

default_result 未能与任何一个值匹配时函数返回的默认值

示例如下

select decode( x ‘x is ‘x is ‘others’) from dual

当x等于则返回‘x is

当x等于则返回‘x is

否则返回others’

在需要比较个值的时候我们可以配合SIGN()函数一起使用

SELECT DECODE( SIGN( ) Is Positive Is Nagative Is Zero)

同样也可以用CASE实现

SELECT CASE SIGN( )

WHEN THEN Is Positive

WHEN THEN Is Nagative

ELSEIs Zero END

FROM DUAL

另外大家还可以在Order by中使用Decode

表table_subject有subject_name列要求按照外的顺序进行排序这时就可以非常轻松的使用Decode完成要求了

select * from table_subject order by decode(subject_name 语文 数学 外语)

               

上一篇:oracle sqlplus 常用命令大全

下一篇:怎么监控oracle数据库表和表空间