NVL2 函数根据条件返回两个不同值:condition 为 true,返回 value_if_true;condition 为 false,返回 value_if_false。
NVL2 函数详解
NVL2 函数是一个 Oracle 函数,用于根据指定的条件返回两个不同的值。其语法如下:
NVL2(condition, value_if_true, value_if_false)
其中:
用法
NVL2 函数通过评估条件表达式来确定要返回的值。如果条件为真,则返回 value_if_true;如果条件为假,则返回 value_if_false。
以下是一个使用 NVL2 函数的示例:
SELECT NVL2(salary > 50000, 'High Salary', 'Low Salary') AS salary_status FROM employees;
此查询会返回一个名为 salary_status 的新列,其中包含以下值:
应用场景
NVL2 函数通常用于:
注意事项
须兼容。示例
以下是一些其他使用 NVL2 函数的示例:
SELECT NVL2(name, 'Unknown', name) AS full_name FROM customers;
SELECT NVL2(gender, 'Male', 'Female') AS gender_description FROM employees;
SELECT NVL2(quantity >= 10, 0.1, 0.05) AS discount_rate FROM sales;