NVL2
📄字数 446
👁️阅读量 加载中...
功能描述
判断 expr1 是否为 NULL,如果 expr1 不为 NULL 则返回 expr2,如果 expr1 为 NULL 则返回 expr3。
语法格式
sql
NVL2(expr1,expr2,expr3)输入参数
expr1:数据库支持的所有数据类型。expr2:数据库支持的所有数据类型。expr3:数据库支持的所有数据类型。
注意
expr2 和 expr3 需要存在公共类型,否则执行报错。
输出结果
返回对应输入参数的数据类型,如返回 expr2,则返回值数据类型就是 expr2 的数据类型。
执行类型
| TYPE | VALUE | 说明 |
|---|---|---|
| NATIVE | 0 | 函数只能在本地计算 |
| VOLATI | 0 | 函数的每次计算值不同 |
| STABLE | 0 | 函数的每次计算值相同 |
| COMPUTE | 0 | 函数支持预计算取值 |
| NOT_CONST | 0 | 函数不支持转常数 |
| HAVE_DEF | 0 | 函数参数有默认值 |
示例
sql
-- 根据第一个参数是否为空,返回相应值
SQL> SELECT NVL2('非空值', '返回expr2', '返回expr3'),NVL2(NULL, '不会返回', '返回expr3') FROM dual;
+-----------+-----------+
| EXPR1 | EXPR2 |
+-----------+-----------+
| 返回expr2 | 返回expr3 |
+-----------+-----------+