购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.4.2 CASE

CASE语句从一系列条件中进行选择,并运行相应的语句。

简单CASE语句计算单个表达式,并将其与几个潜在值进行比较。

搜索CASE语句计算多个布尔表达式,并选择第一个值为TRUE的表达式。

1.简单CASE语句

简单CASE语句具有以下结构。

selector是一个表达式(通常是单个变量)。每个selector_value可以是文字或表达式(对于完整的语法,请参阅“CASE”)。

如果selector等于第一条语句值selector_value_1,则不计算剩余条件。如果没有任何selector_value等于selector,则执行else_statements语句,如果没有该语句,则引发预定义的异常CASE_NOT_FOUND。

示例2.11使用一个简单的CASE语句将单个值与多个可能值进行比较。请读者与示例2.10中的IF THEN ELSIF语句进行对比。

注意: 如果简单CASE语句中的selector的值为NULL,则它不能被WHEN NULL匹配,而需要使用带有WHEN条件IS NULL的搜索CASE语句。

示例2.11: 简单的CASE语句。

程序代码如下。

程序运行结果如下。

2.搜索CASE语句

搜索CASE语句具有以下结构。

搜索CASE语句运行条件为真的第一条语句,不计算剩余条件。如果没有条件为真,即CASE语句如果存在else_statements,则运行,否则引发预定义异常CASE_NOT_FOUND。

示例2.12中的搜索CASE语句在逻辑上等价于例2.11中的简单CASE语句。

示例2.12: 搜索CASE语句。

程序代码如下。

程序运行结果如下。 t5c/8e9nhJgZKvWtMI1oKZijiaUj29a2ew+dSyls97MvAhql3eyk+g5QVX55Pq/B

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开