龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

oracle/plsql中decode()函数用法

时间:2013-01-03 18:08来源:未知 作者:admin 点击:
分享到:
本文章简单的介绍了oracle中的decode()函数的用法及用实例说明了此函数在实际应用中的用法。 在Oracle/ PLSQL的,DECODE函数有一个IF - THEN - ELSE语句的功能。 DECODE函数的语法是: decode( expr
本文章简单的介绍了oracle中的decode()函数的用法及用实例说明了此函数在实际应用中的用法。

在Oracle/ PLSQL的,DECODE函数有一个IF - THEN - ELSE语句的功能。

DECODE函数的语法是:
decode( expression , search , result [, search , result]... [, default] )

expression值进行比较。
search 是对表达相比的价值。
result是返回的值,如果表达式等于搜索。

default 是可选的。如果没有找到匹配,解码将返回默认值。如果省略了默认,然后解码语句将返回null(如果没有找到匹配)。
撤消修改

Applies To:

Oracle 9i, Oracle 10g, Oracle 11g

实例

SELECT supplier_name,
decode(supplier_id, 10000, 'IBM',
 10001, 'Microsoft',
 10002, 'Hewlett Packard',
  'Gateway') result
FROM suppliers;

上述解码的语句与以下的IF - THEN- ELSE语句是等效的:

IF supplier_id = 10000 THEN
     result := 'IBM';

ELSIF supplier_id = 10001 THEN
    result := 'Microsoft';

ELSIF supplier_id = 10002 THEN
    result := 'Hewlett Packard';

ELSE
    result := 'Gateway';

END IF;


DECODE函数将一个接一个比较每个supplier_id价值。

 


精彩图集

赞助商链接