您好,登录后才能下订单哦!
今天研究了一下数据库中的过程,发现用到NVL这个函数,我记忆力不好,之前用过,长期不用又忘了。于是去查看了下官方的用法解释:
http://docs.oracle.com/cd/E11882_01/server.112/e41084/functions119.htm#i91798
NVL属于字符转化输出也是字符类型的。
表达式为NVL(expr1,expr2)
其目的就是为了转化"空"字符为"非空"字符,当expr1为空时,输出expr2,相反则输出expr1.
原文中提到expr1和expr2的可以是任意数据类型,如果两者的数据类型不一致,则会进行类型转化,
其转化的原则遵循:
1、如果expr1是字符类型,则在进行比较前将expr2转化成expr1的类型,并以varchar2类型返回字符集。
2、如果expr1是数值类型,则由Oracle自身根据最高优先级判断,将数据类型转化为高优先的数据类型,
并且最终以该类型返回数据。
举例:
SELECT NVL(MAX(ID), 0) FROM WAYBILL;
这个意思表示当WAYBILL表的中最大ID为空的时候返回0。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。