mysql nvl2 函数_Oracle nvl(),nvl2()函数介绍

mysql nvl2 函数_Oracle nvl(),nvl2()函数介绍NVL 函数 Oracle PLSQL 中的一个函数 格式为 NVL string1 replace with 功能 如果 string1 为 NULL 则 NVL 函数返回 replace with 的值 否则返回 string1 的值 注意事项 string1 和 replace with 必须为同一数据类型 除非显示的使用 TO CHAR 函数 例 NVL TO CHAR numeric column some

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。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/221707.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午5:28
下一篇 2026年3月17日 下午5:28


相关推荐

  • 如何配置maven本地仓库_maven指定本地仓库

    如何配置maven本地仓库_maven指定本地仓库1)配置本地仓库1)Maven的核心程序并不包含具体功能,仅负责宏观调度。具体功能由插件来完成。Maven核心程序会到本地仓库中查找插件。如果本地仓库中没有就会从远程中央仓库下载。此时如果不能上网则无法执行Maven的具体功能。为了解决这个问题,我们可以将Maven的本地仓库指向一个在联网情况下下载好的目录。2)Maven默认的本地仓库:~.m2\repository目录。Tips:~表示当前用户的家目录。3)Maven的核心配置文件位置:解压目录E:\apache-maven.

    2025年11月19日
    3
  • php中break 2 和 continue 2 的区别是什么呢?

    php中break 2 和 continue 2 的区别是什么呢?

    2022年2月10日
    48
  • 信号与系统公式笔记(8)——拉普拉斯变换

    信号与系统公式笔记(8)——拉普拉斯变换这里是关于第 5 章的内容 拉普拉斯变换 基本内容 1 拉普拉斯变换定义 收敛域 2 拉普拉斯变换的性质 和傅里叶变换类似 3 拉普拉斯反变换 4 拉普拉斯变换与电路分析 5 系统函数 6 拉普拉斯变换与傅里叶变换关系对不符合狄利克雷条件的函数无法做傅里叶变换 所以搞出来个拉普拉斯变换 用 eSteSt mathrm e St 的例子

    2026年3月19日
    2
  • mysql之模糊查询的方法

    mysql之模糊查询的方法想起Mysql模糊查询正常情况下我们想到的一般都是like,但是使用like,格式正确了效率很快,当然这是在数据量比较小的情况下,问题是在数据量小的时候,不容易看出查询的效率,但在数据量达到百万级,千万级的时mysql查询的效率是很关键的,也是很重要的。一、一般情况下like模糊查询的写法:这个SQL语句,如果用explain解释的话,我们很容易就能发觉它是没有走索引搜索,而是对…

    2022年5月30日
    56
  • 服务器winsxs文件夹怎么清理工具,win10系统winsxs文件夹清理的操作方法

    服务器winsxs文件夹怎么清理工具,win10系统winsxs文件夹清理的操作方法很多小伙伴都遇到过对 win10 系统 winsxs 文件夹清理进行设置的困惑吧 一些朋友看过网上对 win10 系统 winsxs 文件夹清理设置的零散处理方法 并没有完完全全明白 win10 系统 winsxs 文件夹清理是如何设置的 今天小编准备了简单的操作办法 只需要按照 1 在管理员命令提示符窗口中输入 Dism exe Online Cleanup Image AnalyzeCompo 命

    2026年3月19日
    2
  • 【Java】Java双端队列Deque使用详解

    【Java】Java双端队列Deque使用详解Deque是一个双端队列接口,继承自Queue接口,它们共同的实现类是LinkedList。Deque的功能很强大:代替普通队列Queue:先进先出、队尾进队头出可以作为双端队列:队尾和队头都可以进出还可以作为堆栈使用:先进后出、只能从一端进出注意:Java堆栈Stack类已经过时,Java官方推荐使用Deque替代Stack使用。jdk文档中关于Deque的使用介…

    2022年7月14日
    23

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号