NVL函数 Oracle/PLSQL中的一个函数。

  格式为:

  NVL( string1, replace_with)

  功能:如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值。

  注意事项:string1和replace_with必须为同一数据类型,除非显示的使用TO_CHAR函数。

  例:NVL(TO_CHAR(numeric_column), 'some string') 其中numeric_column代指某个数字类型的值。

  例:nvl(yanlei777,0) > 0

  NVL(yanlei777, 0) 的意思是 如果 yanlei777 是NULL, 则取 0值

  通过查询获得某个字段的合计值,如果这个值为null将给出一个预设的默认值

  例如:

  select nvl(sum(t.dwxhl),1)

  from tb_jhde t

  就表示如果sum(t.dwxhl) = NULL 就返回 1

  另一个有关的有用方法

  declare i integer

  select nvl(sum(t.dwxhl),1) into i from tb_jhde t where zydm=-1这样就可以把获得的合计值存储到变量

  i中,如果查询的值为null就把它的值设置为默认的1

  oracle中:

  select nvl(rulescore,0) from zwjc_graderule where rulecode='FWTD';

  如果记录中不存在rulecode ='FWTD'的数据.则查不出数据.

  select nvl(rulescore,0) into rule_score from zwjc_graderule where rulecode='FWTD';会报查不到数据的错

  select nvl(sum(rulescore),0) from zwjc_graderule where rulecode='FWTD';

  如果记录中不存在rulecode ='FWTD'的数据.还是可以得到一行列名为nvl(rulescore,0),值为0的数据.

  select nvl(sum(rulescore),0) into rule_score from zwjc_graderule where rulecode='FWTD'; 不会报错

NVL的扩展-NVL2

  Oracle在NVL函数的功能上扩展,提供了NVL2函数。

  NVL2(E1, E2, E3)的功能为:如果E1为NULL,则函数返回E3,若E1不为null,则返回E2。

Oracle nvl(),nvl2()函数介绍的更多相关文章

  1. oracle中的nvl(), nvl2()函数

    nvl()函数是oracle/plpgsql中的一个函数,格式为:nvl(string1, replace_with) 功能:如果string1 位null,那么nvl()函数返回replace_wi ...

  2. oracle NVL,NVL2,NULLIF,COALESCE

    Oracle中函数以前介绍的字符串处理,日期函数,数学函数,以及转换函数等等,还有一类函数是通用函数.主要有:NVL,NVL2,NULLIF,COALESCE,这几个函数用在各个类型上都可以. 下面简 ...

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

    1.nvl(exp1,exp2)该函数是处理表达式中的空值: 假设表达式exp1是空值,则该函数返回表达式exp2的值, 假设表达式exp1没有是空值,则该函数返回表达式exp1的值. 2.nvl2( ...

  4. 【Oracle】add_months()函数介绍

    add_months 函数主要是对日期函数进行操作,举例子进行说明 add_months 有两个参数,第一个参数是日期,第二个参数是对日期进行加减的数字(以月为单位的) 如:3个月以后的时间,可以用下 ...

  5. 【Oracle】userenv()函数介绍分析

    说到这个userenv()使用起来还是很有用的 参数   功能 CLINET_INFO                                      返回最高可达64个字节存储的用户会话信 ...

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

    DECODE() decode()函数简介: 主要作用:将查询结果翻译成其他值(即以其他形式表现出来,以下举例说明): 使用方法: Select decode(columnname,值1,翻译值1,值 ...

  7. Oracle的nvl函数和nvl2函数

    一.基本语法 介绍一下oracle的nvl函数和nvl2函数. nvl函数 nvl函数基本语法为nvl(E1,E2),意思是E1为null就返回E2,不为null就返回E1. nvl2函数 nvl2函 ...

  8. Oracle NVL 函数 nvl nvl2

    Oracle中函数以前介绍的字符串处理,日期函数,数学函数,以及转换函数等等,还有一类函数是通用函数.主要有:NVL,NVL2,NULLIF,COALESCE,这几个函数用在各个类型上都可以. 下面简 ...

  9. Oracle中的NVL,NVL2,NULLIF以及COALESCE函数使用

    首先注意空(null)值,空值加任何值都是空值,空值乘任何值也都是空值,依此类推. 1.NVL函数 NVL函数的格式如下:NVL(expr1,expr2) 含义是:如果oracle第一个参数为空那么显 ...

随机推荐

  1. 虚拟机NAT模式无法上网问题的解决办法

    在使用CentOS虚拟机时,出现了无法上网的情况,使用主机ping虚机地址可以ping通,而虚机ping不通主机,同时虚机也无法ping通其他的网址或ip,显示内容为Network is unreac ...

  2. if __name__ == '__main__':

    python if __name__ == '__main__': 模块是对象,并且所有的模块都有一个内置属性 __name__.一个模块的 __name__ 的值取决于您如何应用模块.如果 impo ...

  3. Hive 的 map join

    学习自 http://blog.csdn.net/xqy1522/article/details/6699740 1. Map Join 的使用场景: 关联操作中有一张表非常小 不等值的链接操作 2. ...

  4. UOJ149 【NOIP2015】子串

    本文作者:ljh2000作者博客:http://www.cnblogs.com/ljh2000-jump/转载请注明出处,侵权必究,保留最终解释权! [问题描述]有两个仅包含小写英文字母的字符串 A ...

  5. python dict.get()和dict['key']的区别

    先看代码: In [1]: a = {'name': 'wang'} In [2]: a.get('age') In [3]: a['age'] --------------------------- ...

  6. PHP之:多图上传

    撰写日期:2016-6-30 15:17:35 Thursday 参考 http://a3147972.blog.51cto.com/2366547/1381136 (08-05ThinkPHP+sw ...

  7. 第三次个人作业——软件产品评测(K米Android端)

    第一部分 调研,评测 1.K米简介 K米点歌是一款免费的社交K歌手机应用,其手机点歌功能主要在KTV.夜总会,酒吧等K歌场所中使用,当前提供iPhone版本及安卓版本下载使用. 2.评测 2.1.上手 ...

  8. PhyLab2.0设计分析阶段任务大纲(α)

    任务概述 由于接手软剑攻城队的PhyLab项目,省去了用户需求分析.团队编码规范.用户界面原型设计和后端逻辑设计的大部分环节,因此前期的主要任务落在了用户使用反馈.功能优化增改方向.用户体验优化以及源 ...

  9. POJ1915Knight Moves(单向BFS + 双向BFS)

    题目链接 单向bfs就是水题 #include <iostream> #include <cstring> #include <cstdio> #include & ...

  10. spring--基本介绍

    1.1.1  Spring是什么 Spring是一个开源的轻量级Java SE(Java 标准版本)/Java EE(Java 企业版本)开发应用框架,其目的是用于简化企业级应用程序开发.应用程序是由 ...