ORACLE 中nvl,nvl2,coalesce和NULLIF函数的区别:
nvl(exp1,exp2)
该函数是处理表达式中的空值:假设表达式exp1是空值,则该函数返回表达式exp2的值,
假设表达式exp1没有是空值,则该函数返回表达式exp1的值。
nvl2(exp1,exp2,exp3)
该函数决意exp1离去是空值和非空值时返回哪个表达式:
假设exp1为空值,则返回exp3
假设exp1非空,返回exp2。
coalesce(exp1,exp2,.....)
该函数正在括号里全数的表达式中返回第一个非空值,假设都是空值,则返回空值,表达式最少是两个。
例子:
NULLIF(表达式1,表达式2)
如果表达式1和表达式2相等则返回空值 否则返回第一个值