oracle nvl函数

关于oralce nvl函数,博客园中已经有很多人写过,但是没有人说过nvl函数能把null转为自己设置好的值的前提。

select * from table  where id=condition ;如果能查出的结果不为空,只是中的某列为空,比如name没有值,

那么select nvl(name,'value') from table where id=condition 是可以将null转为对应的value。

如果在返回结果是空的情况下,仍然想要这么用,那就需要再做一次nvl了。select nvl((select nvl(name,'value') from table where id=condition ),'value2') from dual ;

举一个业务场景,查询客户昨日收益,如果昨日没有收益,且数据库没有昨日收益数据,那么可以使用上面的语句。

本人有一个疑惑就是这样做是否合适,希望知道的朋友能告诉我。

posted on 2017-08-11 10:45  我是路人  阅读(194)  评论(0编辑  收藏  举报

导航