Oracle中null的处理
来源:互联网 发布:淘宝 ap lolita 编辑:程序博客网 时间:2024/04/28 14:44
在工作学习当中,会经常遇到字段值为null的情况,很是大煞风景,那该怎样处理呢?
1、使用nvl(expr1,expr2) 处理NULL值
解释该函数:nvl函数可以将expr1为空时,则返回expr2;不为空时,则返回expr1。
需要注意的是:参数expr1和expr2可以是任意数据类型,但二者的数据类型必须要匹配。
SELECT ename,sal,comm,sal+nvl(comm,0) AS '月收入' FROM emp;
2、使用nvl2(expr1)处理NULL值
解释该函数:nvl2是Oracle9i新增加的函数,该函数也用于NULL。格式为NVL2(expr1,expr2,expr3)。如果expr不是null,则返回expr2;如果expr1为null,则返回expr3。
其中,expr1可以是任意数据类型,而expr2和expr3可以是除LONG之外的任何数据类型。同样需要注意的是,expr2和expr3的数据类型必须要和expr1的数据类型匹配。
SELECT ename,nvl2(comm,sal+comm,sal) FROM emp;
2、使用decode函数处理NULL
decode的语法结构如下:
decode (expr其中呢,我们可以利用decode(字段或字段的运算,值1,值2,值3)该结构进行对null进行处理;当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3ession, search_1, result_1)decode (expr ession, search_1, result_1, search_2, result_2)decode (expr ession, search_1, result_1, search_2, result_2, ...., search_n, result_n)decode (expr ession, search_1, result_1, default)decode (expr ession, search_1, result_1, search_2, result_2, default)decode (expr ession, search_1, result_1, search_2, result_2, ...., search_n, result_n, default)
当然值1,值2,值3也可以是表达式。
e.g:
SELECT ename,decode(comm,null,sal,comm+sal) FROM emp;
3、使用case语法
e.g:
select * from ywgl_userorder by (case username when null then '李四' else usernameend);表示当ywglname为空时返回‘李四’,如果不为空则返回username。
1 0
- Oracle中null的处理
- Oracle中null的处理
- oracle中对null值的处理
- oracle中NULL值处理
- oracle 中sql的查询条件有NULL的处理
- Oracle 排序中常用的NULL值处理方法
- Oracle 排序中常用的NULL值处理方法
- Oracle 排序中常用的NULL值处理方法
- Oracle 排序中常用的NULL值处理方法
- Oracle 排序中常用的NULL值处理方法
- Oracle 排序中常用的NULL值处理方法
- oracle 中oci 关于null 的处理方法
- Oracle 排序中常用的NULL值处理方法
- Oracle 排序中常用的NULL值处理方法
- Oracle中NULL的定义及其相关处理办法
- Oracle 排序中常用的NULL值处理方法
- ORACLE中处理空值NULL的几个通用函数
- Oracle 排序中常用的NULL值处理方法(转)
- JNI教程(二)
- 理解 Java 的四种引用
- Linux工具之curl与wget高级使用
- java卡应用安装过程
- 安全事件丨一心想做社交的支付宝,这下出了个“致命漏洞”
- Oracle中null的处理
- 懒加载和预加载
- 编写我的小程序
- jsp给后台带多个参数
- 使用maven插件反向映射generatorConfig.xml生成代码
- linux 统计文件夹下目录、文件个数
- MariaDB安装
- 设备标识符
- 微信小程序上线,关于入口、体验、推广的观察与思考