首页 > 数据库 >Oracle 的nvl函数和nvl2函数用法

Oracle 的nvl函数和nvl2函数用法

时间:2022-09-30 14:35:22浏览次数:77  
标签:NVL 函数 sal comm Oracle nvl 表达式

空空Ryan  

nvl()函数和nvl2()函数

如果你某个字段为空,但是你想让这个字段显示0,可以使用nvl(字段名,0),当然这个0也可以换成其他东西,如:1,2,3……

 

一 NVL(表达式1,表达式2)

如果表达式1为空值,NVL返回值为表达式2的值,否则返回表达式1的值。该函数的目的是把一个空值(null)转换成一个实际的值。其表达式的值可以是数字型、字符型和日期型。但是表达式1和表达式2的数据类型必须为同一个类型

对数字型: NVL( comm,0);
对字符型 NVL( TO_CHAR(comm), 'No Commission')
对日期型 NVL(hiredate,' 31-DEC-99')

例子:
select 

  ename,NVL(TO_char(comm),ename||' is not a salesperson!') AS COMMISSION
from emp     二 NVL2(表达式1,表达式2,表达式3)

如果表达式1为空,返回值为表达式3的值。如果表达式1不为空,返回值为表达式2的值。

例如 NVL2(comm,'sal+comm',sal)
NVL2函数测试comm,如果comm为空,就返回sal 的值。如果 comm 不为空(null),就返回表达式 sal+comm的值。

标签:NVL,函数,sal,comm,Oracle,nvl,表达式
From: https://www.cnblogs.com/fhuafeng/p/16744779.html

相关文章

  • 【笔记】Oracle Offset 以及力扣
    【笔记】OracleOffsetoffset代表跳过前n行,如果表少于n+1条记录,结果集将是空的;比如n=100,表示从101开始往后查。fetchnext代表往后查n行;next和first可......
  • 怎样给函数设置多个返回值
    一、使用元组实现1.1使用ValueTuple实现ValueTuple命名为元组(在C#7.1中可用),优点是它最简洁,不可变且易于构造。private(doublefirst,doublesecond)GetHeight(){......
  • 函数集合
    01提取不同文件夹下同名文件点击查看代码defselect(dir,name):importosimportshutillist1=[]list2=[]dd=''forroot,dirs,fil......
  • C语言:字符串连接函数
    #include<stdio.h>#include<string.h>voidlianjie(chara[],charb[],charc[]){inti,j,len1=strlen(a),len2=strlen(b);for(i=0;i<len1;i++)c[i]=......
  • JavaScript箭头函数的使用以及和普通函数之间的使用
    箭头函数的使用以及和普通函数之间的转换// 第一种不带参数    // var one = function(){    //   return 'I am one'    // }    var......
  • sql排序函数 rank() / dense_rank()
    Rank排名函数1、rank()按照某字段的排序结果添加排名,但是他是跳跃的、间断的排名partitionby子句按照对应字段将结果集分为多个分区,然后orderby子句按分数对结果集进......
  • ES6形式常用的数组遍历函数
    文章目录​​0.给定一个数组​​​​1.find():查找成员对象​​​​2.findIndex():查找成员下标​​​​3.filter():过滤数组​​​​4.forEach():迭代数组​​​​5.some......
  • 1.1学生排名表(析构函数)
    现在输入一批学生(人数大于0且不超过100)的名次和他们的姓名。要求按名次输出每个人的排名。输入格式:每行为一个学生的信息,共两项,第一项为排名(为正整数,且任意两名学生的排名......
  • C++——不存在从 "std::pair<int, int>" 到 "int" 的适当转换函数
    1#include<iostream>2#include<vector>3#include<map>4#include<string>5#include<utility>678intUpdate(std::pair<int,int>a){9......
  • Oracle常用SQL
    【统计数据条数大于2的】  SELECTSERIAL_NUMBERFROMV_SIMPLE_ENTRUSTMANAGEMENT GROUPBYSERIAL_NUMBERHAVINGCOUNT(SERIAL_NUMBER)>2 【表注释查询】  SE......