oracle

oracle中nvl2函数怎么使用

小亿
189
2024-06-06 18:13:24
栏目: 云计算

在Oracle中,NVL2函数用于根据表达式的值来返回不同的结果。该函数的语法如下:

NVL2(expr1, expr2, expr3)

其中,expr1是要检查的表达式,如果表达式的值不为null,则返回expr2,否则返回expr3。

例如,假设有一个表格包含员工的出生日期和姓名,我们想要根据员工是否年满18岁来返回不同的结果:

SELECT name, NVL2(birthdate, 
                CASE WHEN months_between(sysdate, birthdate)/12 >= 18 
                     THEN 'Adult' 
                     ELSE 'Minor' 
                END, 
                'Unknown') AS age_group
FROM employees;

在上面的示例中,如果员工的出生日期不为空,则根据员工年龄返回相应的结果(Adult或Minor),如果出生日期为空,则返回Unknown。

0
看了该问题的人还看了