oracle nvl,nvl2,coalesce几个函数的区别

1.nvl(exp1,exp2)

NVL lets you replace null (returned as a blank) with a string in the results of a query. If expr1 is null, then NVL returns expr2. If expr1 is not null, then NVL returnsexpr1.

该函数是处理表达式中的空值:假设表达式exp1是空值,则该函数返回表达式exp2的值,

假设表达式exp1没有是空值,则该函数返回表达式exp1的值。

2.nvl2(exp1,exp2,exp3)

NVL2 lets you determine the value returned by a query based on whether a specified expression is null or not null. If expr1 is not null, then NVL2 returns expr2. Ifexpr1 is null, then NVL2 returns expr3.

该函数决意exp1离去是空值和非空值时返回哪个表达式:

                        假设exp1为空值,则返回exp3

                                            假设exp1非空,返回exp2。

3.coalesce(exp1,exp2,.....)

COALESCE returns the first non-null expr in the expression list. You must specify at least two expressions. If all occurrences of expr evaluate to null, then the function returns null.

该函数正在括号里全数的表达式中返回第一个非空值,假设都是空值,则返回空值,表达式最少是两个。

例子:

时间: 2024-12-30 15:02:02

oracle nvl,nvl2,coalesce几个函数的区别的相关文章

oracle几个函数整理 DECODE() NVL NVL2 NULLIF Coalesce(转)

DECODE() decode()函数简介: 主要作用:将查询结果翻译成其他值(即以其他形式表现出来,以下举例说明): 使用方法: Select decode(columnname,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值) From talbename Where … 其中columnname为要选择的table中所定义的column, ·含义解释: decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)的理解如下: if (条件==值1) th

NVL,NVL2,NULLIF,COALESCE

Oracle中一类函数是通用函数.主要有:NVL,NVL2,NULLIF,COALESCE,这几个函数用在各个类型上都可以. 下面简单介绍一下几个函数的用法. 在介绍这个之前你必须明白什么是oracle中的空值null 1.NVL函数 NVL函数的格式如下:NVL(expr1,expr2) 含义是:假如oracle第一个参数为空那么显示第二个参数的值,假如第一个参数的值不为空,则显示第一个参数本来的值. 例如: SQL> select ename,NVL(comm, -1) from emp;

问题:oracle nvl;结果:Oracle中的NVL函数

Oracle中的NVL函数 (2012-11-30 13:21:43) 转载▼ 标签: nvl oracle 分类: Oracle Oracle中函数以前介绍的字符串处理,日期函数,数学函数,以及转换函数等等,还有一类函数是通用函数.主要有:NVL,NVL2,NULLIF,COALESCE,这几个函数用在各个类型上都可以. 下面简单介绍一下几个函数的用法. 在介绍这个之前你必须明白什么是oracle中的空值null 1.NVL函数 NVL函数的格式如下:NVL(expr1,expr2) 含义是:

oracle group by rollup,decode,grouping,nvl,nvl2,nullif,grouping_id,group_id,grouping sets,RATIO_TO

干oracle 047文章12当问题,经验group by 声明.因此邂逅group by  rollup,decode,grouping,nvl,nvl2,nullif,RATIO_TO_REPORT等一下. 1. decode  与if...then,case...when...这类流数据语句功能差点儿相同 decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义例如以下: IF 条件=值1 THEN RETURN(值1) ELSIF 条件=值2 TH

Oracle学习(四)_SQL函数

--第一部分:SQL基础 --ch1 简单查询 --ch2 查询基本概念 --ch3 数据过滤 --第二部分:多表操作 --ch4 集合理论 --ch5 内连接 --ch6 外连接 --ch7 子查询 --第三部分:数据分组 --ch8 简单统计 --ch9 数据分组 --ch10 分组数据过滤 --第四部分:SQL函数 --ch11 内置函数 --ch12 case表达式 --第五部分:DML语句 --ch13 插入数据 --ch14 修改数据 --ch15 删除数据 ------------

Oracle笔记(五) 单行函数

Oracle笔记(五) 单行函数 虽然各个数据库都是支持SQL语句的,但是每一个数据库也有每一个数据库自己所支持的操作函数,这些就是单行函数,而如果要想进行数据库开发的话,除了要会使用SQL之外 ,就是要多学习函数. 单行函数主要分为以下五类:字符函数.数字函数.日期函数.转换函数.通用函数: 一.字符函数 字符函数的功能主要是进行字符串数据的操作,下面给出几个字符函数: UPPER(字符串 | 列):将输入的字符串变为大写返回: LOWER(字符串 | 列):将输入的字符串变为小写返回: IN

问题:oracle floor;结果:Oracle的取整和四舍五入函数——floor,round,ceil,trunc使用说明

Oracle的取整和四舍五入函数——floor,round,ceil,trunc使用说明 (2011-04-06 16:10:35) 转载▼ 标签: 谈 分类: 渐行渐远 FLOOR——对给定的数字取整数位 SQL> select floor(2345.67) from dual; FLOOR(2345.67) -------------- 2345 CEIL-- 返回大于或等于给出数字的最小整数 SQL> select ceil(3.1415927) from dual; CEIL(3.14

Oracle实践--PL/SQL基础之函数

PL/SQL基础之函数 /* 函数:可以有返回值得命名的PL/SQL子程序,必须有返回值 关键字:function return */ --函数1 create or replace function helloworld return varchar2--指定返回类型,不能给定长度 as v_hello varchar2(50); begin v_hello :='helloworld!'; return v_hello;--不可少的return end; --函数调用方式: select h

Oracle开发专题之:报表函数

转载:http://www.blogjava.net/pengpenglin/archive/2008/06/29/211462.html [原]Oracle开发专题之:报表函数 目录=========================================1.报表函数简介2.RATIO_TO_REPORT函数 一.报表函数简介:回顾一下前面<Oracle开发专题之:窗口函数>中关于全统计一节,我们使用了Oracle提供的: sum(sum(tot_sales)) over (orde