实用Oracle 函数

最近在做一个需求,   一般业务表中存在 创建时间 和修改时间    新的业务新增几个时间字段 要求排序集优先  但普通业务表单中 该字段为空值

第一个想到的 order by expr1, expr2,'''''     直接pass

其次 想到了 NVL函数   但是无法做到多个时间节点的排序操作

最后使用COALESCE 对多个时间字段做了处理


1 COALESCE(expr1, expr2......)
  返回表达式第一个非空的expr
 
2 GREATEST(expr1, expr2......)
  返回表达式的最大值 注意expr值如果有一个为null 则返回null

3 LEAST(expr1, expr2......)
  返回表达式中的最小值 注意 expr值如果有一个为null 则返回null

4 NVL(expr1, expr2)
  如果expr1为null 则返回expr2的值 如果不为null  则返回expr1 的值

5 NVL2(expr1, expr2, expr3)
  如果expr1为null, 则返回expr3 如果expr1 不为null  则返回expr2

6 NULLIF(expr1, expr2)
  如果expr1和expr2相等返回NULL,不等则返回expr1

文章来源:

Author:芸诺
link:http://yuuuo.com/?id=43