今天碰到一个视图要修改,逻辑是这样的:
该视图有两个字段 a b
当b值为null时显示 未变更
当b值为其他任何值时显示 已变更。
之前用的是case when ,但貌似case when 不能判断空值,好像就不行了。
后来上网一搜查到了nvl这个函数,好东西呀!~
nvl(expr1,expr2)
将一个为null的值转换为指定的值,如果不为null则保持原值不变,支持字符,数字,时间类型。expr1和expr2的类型必须一样。
O了,case语句如下
case nvl(b,-1)
when ‘-1’then ‘未变更’
else ‘已变更‘
将null转为一个业务逻辑中不可能存在的值,在判断就行了。 记录一下。