http://docs.oracle.com/cd/B28359_01/server.111/b28286/functions001.htm#autoId14

 

本文内容

  • COALESCE
  • LNNVL
  • NULLIF
  • NVL
  • NVL2

 

NULL 相关的函数方便处理 null。

 

COALESCE(expr1, expr2, ..., exprn)


COALESCE 返回在表达式列表中第一个非 null 的 expr。必须指定至少两个表达式。若所有 expr 为 null,则函数返回 null。

Oracle 数据库使用 short-circuit evaluation。数据库计算每个 expr 的值,并确定是否为 NULL,而不是计算所有 expr 后,再确定是否为 NULL。

若所有 expr 出现数字类型,或可以隐式转换成数字类型的任何非数字类型,则 Oracle 数据库用最高数字优先(highest numeric precedence)来确定参数,隐式把剩余参数转换成数字类型,并返回。

该函数是 NVL 函数的一般形式。

可以使用 COALESCE 实现 CASE 表达式。例如,

COALESCE (expr1, expr2)

相关文章: