创建测试用表:

CREATE OR REPLACE VIEW v AS

SELECT NULL AS c1, NULL AS c2, '1' AS c3, NULL AS c4, '2' AS c5 FROM dual

UNION ALL

SELECT NULL AS c1, NULL AS c2, NULL AS c3, '3' AS c4, '2' AS c5 FROM dual;

SELECT * FROM v;

如果要查询列c3的值,当c3列为空时,把它显示为0,有以下两种方式:

-- 使用nvl函数

SELECT NVL(c3, '0') c3 FROM v;

-- 使用coalesce函数

SELECT COALESCE(c3, '0') c3 FROM v;

查询结果如下:

如果要查询列c1到c5中,第一个不为空的值,也有下面的两种方式:

-- 方法一

SELECT NVL(NVL(NVL(NVL(c1, c2), c3), c4), c5) AS c from v;

-- 方法二

SELECT COALESCE(c1, c2, c3, c4, c5) AS c FROM v;

查询结果如下:

可以看到,相对于nvl来说,coalesce支持多个参数,能很方便的返回第一个不为空的值。

oracle空值转换0,将空值转换为实际值-Oracle相关推荐

  1. oracle 9.2.0.4,CentOS 4.7 安装Oracle 9.2.0.4的一些问题

    #vi/etc/sysconfig/iptables,增加如下 -A INPUT -p udp -s 0/0 -d 0/0 --dport 177 -j ACCEPT -A INPUT -p tcp ...

  2. oracle 11.2.0.3.4 psu 14275605 下载,Oracle RAC 11.2.0.3.2 升级 11.2.0.3.4

    Oracle RAC 11.2.0.3.2升级11.2.0.3.4 安装环境操作系统:RHEL6.264bitOracle Database版本:11.2.0.3.2Oracle Grid版本:11. ...

  3. linux dump命令 异机,Oracle 11.2.0.4 从单实例,使用RMAN 异机恢复到RAC

    Oracle 11.2.0.4从单实例,使用RMAN异机恢复到RAC 注意: (1)迁移的2个db版本版本要一致.包括小版本. (2)RMAN异机恢复的时候,db_name必须相同.如果说要想改成其他 ...

  4. oracle 10.2 64位,Oracle 10.2.0.5 x64升级到11.2.0.3 x64

    说明:11g数据库现在新部署的数量也很多的,对于10g数据库,现在整理一下10g到11g的升级过程.10.2.0.2以上版本才能升级到11.2.0.3版本. 升级说明:10.2.0.5(64)-> ...

  5. Oracle 11.2.0.4 x64 RAC扩展存储空间

    1. 数据库信息 操作系统版本  : OEL6.5 x64    数据库版本    : Oracle 11.2.0.4 x64 RAC      本文针对oracle 11.2.0.4 x64 RAC ...

  6. oracle 10741 trace,RedHat5.3上安装Oracle 10.2.0.1

    RedHat 5.3上安装Oracle 10.2.0.1 1.系统环境: RedHat 5.3 内存16G 交换分区8G 2.必须安装如下包,版本可不一样 gcc-3.2.3-2 make-3.79 ...

  7. oracle_ofsd,Oracle 11.2.0.4 x64 RAC扩展存储空间

    1. 数据库信息 操作系统版本  : OEL6.5 x64 数据库版本    : Oracle 11.2.0.4 x64 RAC 本文针对oracle 11.2.0.4 x64 RAC for OEL ...

  8. oracle 下bdump占用大,【学习笔记】Oracle oradebug 利用oradebug释放被删除文件空间的案例...

    天萃荷净 利用oradebug释放被删除文件空间,运维DBA反映系统空间不足,由于trace跟踪文件占用,删除后不能释放空间,分析原因为oracle进程句柄占用 在很多时候,检查系统时候发现,由于某个 ...

  9. oracle如果为空替换为0,oracle 如何把0转为null

    oracle 如何把0转为null 代码段如下: create table table_1(mon varchar2(50),dep varchar(5),yj number); insert int ...

最新文章

  1. 鸿合一体机触屏没反应怎么办_【干货】嵌入式工控一体机选择电容屏还是电阻屏?...
  2. 第10章 指针(五) 使用地址-------指针的引用
  3. 随机查找数组中第i个元素(按顺序排列的)
  4. B树与B+树 两者的区别
  5. Linux下生成动态链接库是否必须使用 -fPIC 的问题
  6. linux内核网络raw_cpu_add,深入理解Linux网络技术内幕-设备注册和初始化(四)
  7. capture 部分元器件编号_十大电子元器件及其相关基础知识
  8. 9 Fresh jQuery Media Players
  9. httpf发送 json_Java发送http请求发送json对象
  10. 利用xlwt、xlrd搜索excel表格内容并复制出需要的那一行内容
  11. laravel基本信息
  12. MySQL乱码的问题
  13. 浅析成套设备研制中的项目模板管理
  14. NRF24L01无线通信模块
  15. 使用ZUNE从marketplace安装wp7 app的方法
  16. GPIO模拟MDC/MDIO协议
  17. java 优势和劣势
  18. 回顾|Apache Flink Meetup · 北京站(附问题解答 PPT 下载)
  19. 【python】根据图片链接(地址)抓取图片
  20. 企业微信X微盛联合发布会回顾:All in企业微信赛道两年,微盛的增长逻辑

热门文章

  1. 记录-mysql操作-crontab操作
  2. EXCEL-VBA:延迟几秒不卡顿Sleep变通方法
  3. 怎样给自己的笔记本电脑加装内存条
  4. 二级计算机高频函数,计算机二级excel函数公式高频考点详解
  5. 系统分析师-资料总结-上
  6. mysql to hour_MYSQL时间函数
  7. 华为手机什么时候更新鸿蒙系统_华为鸿蒙系统什么时候能更新?鸿蒙2.0支持哪些手机型号...
  8. 无法执行操作。 Note: you are a Hue admin but not a HDFS superuser, root or part of HDFS supergroup, supe
  9. 如何快速将电脑系统升级到Win11教学
  10. Marvell的强大、高效的处理器