oracle/plsql中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价值。

 

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值