当前位置:数据库 > Oracle >>

oracle数据库问题

decode()的用法?作用?一般什么情况下使用?举个简单的例子?
答案:decode函数相当于一条件语句,它将输入值与函数中的参数列表进行比较,根据输入值返回一个对应的值。

其具体的语法格式如下:
 DECODE(input_value,value,result[,value,result…][,default_result]);
其中:
input_value 试图处理的数值。DECODE函数将该数值与一系列的序偶相比较,以决定最后的返回结果
value  是一组成序偶的数值。如果输入数值与之匹配成功,则相应的结果将被返回。对应一个空的返回值,可以使用关键字NULL于之对应
result  是一组成序偶的结果值
default_result 未能与任何一序偶匹配成功时,函数返回的默认值

什么情况下使用?这个不好说,很多地方可以用,但有点是肯定,他可以把内容转换成我们需要的值,比如有张人员信息表,性别一栏放的是字典内容,1男,2女,9未知,我们可以直接用decode,不关联数据字典
select xm,decode(xb , '1','男',2,'女','9','不男不女',null,'难道是人妖?','手术中') from ryxx;
其他:类似于IF
DECODE(对象, 值1, 结果1, 值2, 结果2, ...... [默认结果])

其中[]中得是不一定要写的.

IF 对象 =  值1
返回   结果1
elsif  对象 =  值2
返回   结果2
else
返回 默认结果
end if 

上一个:我是64位Win7系统,最近装了32位 oracle 10g client(客户端),也装了pl/sql,连接不上数据库
下一个:Oracle数据库多表查询!急!!!在线等!!!

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,