Oracle应用之nvl函数和nvl2函数
一、基本语法
介绍一下oracle的nvl函数和nvl2函数。
nvl函数
nvl函数基本语法为nvl(E1,E2),意思是E1为null就返回E2,不为null就返回E1。
nvl2函数
nvl2函数的是nvl函数的拓展,基本语法为nvl2(E1,E2,E3),意思是E1为null,就返回E3,不为null就返回E2。
二、业务场景
nvl()函数比较常用的是这样的nvl(E1,0),意思是E1参数查询到为null的情况,就返回0,不为null就返回E1,常用于非空校验。
nvl2()函数也讲一个业务场景。今天用列转行函数vm_concat查询的时候,遇到一个问题,对vm_concat不熟悉的可以参考我的另外一篇博客:https://blog.csdn.net/u014427391/article/details/84981114
我用vm_concat查询,假如b参数为空的情况就会出现“a()”的参数,我想做的是b参数为空的情况,直接返回“a”参数,b参数不为空的情况才返回“a(b)”类型的数据,比如可以是用户名a(账号b)这样显示。原来SQL是这样的。
select to_char(nvl2(b,vm_concat(a||'('||b||')'), '') from A group by id
改写SQL,通过nvl2函数实现改写:
select to_char(wm_concat(nvl2(b,a || '(' || b || ')',a))) as 返回参数
Oracle应用之nvl函数和nvl2函数相关推荐
- Oracle数据库:oracle函数嵌套,nvl函数,nvl2函数,nullif函数,coalesce合并函数
Oracle数据库:oracle函数嵌套,nvl函数,nvl2函数,nullif函数,coalesce合并函数 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得 ...
- Oracle的 nvl 函数及 nvl2 函数的应用
一.基本语法: nvl 函数: nvl 函数的基本语法为 nvl(E1, E2),如果E1为 NULL,则函数返回E2,否则返回E1本身.但此函数有一定局限,所以就有了nvl2函数.如果两个参数的值都 ...
- mysql nvl2 函数_Oracle的nvl函数和nvl2函数详解
一.基本语法 介绍一下oracle的nvl函数和nvl2函数. nvl函数 nvl函数基本语法为nvl(E1,E2),意思是E1为null就返回E2,不为null就返回E1. nvl2函数 nvl2函 ...
- nvl2可以套公式吗 oracle_Oracle的nvl函数和nvl2函数
一.基本语法 介绍一下oracle的nvl函数和nvl2函数. nvl函数 nvl函数基本语法为nvl(E1,E2),意思是E1为null就返回E2,不为null就返回E1. nvl2函数 nvl2函 ...
- nvl()函数和 nvl2()函数
– nvl()函数和 nvl2()函数 /* NVL(exp1,exp2)函数的作用机制 : 如果 exp1 为空 , 函数 返回 exp2 的值 ; 如果 exp1 不为空, 函数 返回 exp1 ...
- Oracle中的NVL函数、NVL2函数和NULLIF函数
一.NVL函数的格式如下: NVL(expr1,expr2),含义是:如果Oracle中第一个参数的值为空,那么显示第二个参数的值,如果第一个参数不为空,则显示第一个参数的值. 二.NVL2函数的格式 ...
- ORACLE里NVL函数与NVL2函数用法
NVL函数 Oracle/PLSQL中的一个函数. 格式为: NVL( string1, replace_with) 功能:如果string1为NULL,则NVL函数返回replace_with的值, ...
- lightdb对oracle的nvl/nvl2函数的支持
一,oracle下的函数说明(详见链接) a) nvl函数 b) nvl2函数 c) 隐式转换表 二,nvl/nvl2函数返回类型 通过上述官方文档,我们发现nvl/nvl2函数的返回值分别是以参数1 ...
- NVL、NVL2函数
NVL函数是一个空值转换函数.用于把一个空值(NULL)转换成某一个实际的值. 格式如下: NVL(表达式1,表达式2) 如果表达式1为空值(NULL),NVL返回值为表达式2的值,否则返回表达式1的 ...
最新文章
- win环境下,django+postgresql配置
- 【Python】随机划分数据集并生成VOC格式列表
- 工单系统的设计与实现(3)
- linux - python
- http multipart java_Http MultiPart请求
- postman插件下载、安装教程
- java中unicode显示乱码_Java 已知Java系统编码是GBK,jtextarea从一编码为Unicode的文本中读取数据,出现乱码,怎么正常显示?...
- Linux常用脚本命令总结
- C#生成CHM文件(入门篇)
- mysql alter auto increment_将MySQL列更改为AUTO_INCREMENT
- 记录点滴,善于分享-Microsoft Visio 2016下载与安装教程(全)
- xposed android id修改,Xposed模块开发:修改设备IMEI
- 应用市场显示服务器错误的是,win10应用商店打不开服务器出错怎么办
- uml的用例图中扩展关系与包含关系
- DELPHI线程创建与使用
- JavaScript中onload()用法
- 激流勇进,在创新中求发展
- 吴俊雄的经历,腰椎间盘突出终于好了
- python分布采样_基于分布的python随机抽样
- Flash与Flex3的配合,特总结一下心得体会
热门文章
- windows + codeblocks + wxWidgets 连接MySQL数据库
- 迷途的测试老鸟如何振翅高飞
- Python中的__init__()方法整理中(两种解释)
- 利用文件链接更好地使用网络云盘
- request中URL路径获取
- 一起撸个朋友圈吧(step2) 数据结构(JSON结构)【下】篇
- CAP与一致性协议算法
- python爬虫实例电商_如何用代码爬抓电商数据(附淘宝API调用实例)
- chaosblade之磁盘iohang
- 使用JLINK给GD32下载程序