Oracle 除数为0的处理(decode)
select (a/b*100)per from aa;
当b为0时,提示除数为0,
本人想当除数为0时,不让系统提示出错,结果显示0即可?
解决:select decode(b,0,0,a/b*100) per from aa;
在《乘除法的认识》的教学中,对于“0不能做除数”的规定,常说“零做除数没有意义”或“规定零不能做除数”,许多教师往往只是把它当作一个结论来处理,
强调“0做除数,没有意义”。其实这正是“乘除法关系”的一个极好的例子。究竟“零为什么不能做除数”呢?这可从两个方面谈起:
一、当被除数是零,除数也是零时,我们可写成0÷0=X的形式,看商X是什么?根据乘法与除法互为逆运算的关系有:被除数=除数×商,这里除数已为零,商
X无论是什么数(是正数、负数、零)、与零相乘都等于零。即0=0×X,这样商X是不固定的。X是任何数与零相乘都等于零。我们知道四则运算的结果是唯一
的,这就破坏了四则运算结果的唯一性。在这种情况下,我们简单地说:“被除数和除数都为零时,不能得到固定的商。”
二、当被除数不为零时,而除数为零时的结果看,我们可写成5÷0=X,商X无论是什么数,
与除数“0”相乘都得零,而不会得5,即0×X≠5或其他不是零的数。我们简单地说:“当被除数为零,而除数是零时,用乘除法的关系来检验,是‘还不回原 的’”。所以,“0”在4种运算中,就是不可以以除数的身份出现。
鉴于以上两种情况:一是零做除数不能得到固定的商;二是零做除数还不回原。因此说:“零做除数没有意义”或“规定零不能做除数”。
分享自:http://www.zjsyc.com/blog/article/oracle/Oracle_decode.html
Oracle 除数为0的处理(decode)的更多相关文章
- decode函数解决oracle报错"除数为0"的问题
公司的网站在运行的时候突然报错打不开了,打开一看发现报了一个错:ORA-01476:除数为0. 网上一搜发现还是挺多人遇到这个问题的,解决办法就是用decode函数. decode是oracle内置的 ...
- SQL语句中,除数为0时,相应方法
在sql中做除法处理的时候,可能需要处理除数为零的情况. (1).case语句处理方法是用case when ... else 来处理 (2).nullif函数nullif函数有两个参数,定义如下:N ...
- ORA-01476: 除数为 0
假设是a/bdecode(b,0,null,a/b) 这样如果b为0,输出null,不为0输出a/b decode():将查询结果翻译成其他值,类似三目运算符 比较1个参数时 decode( ...
- 成本卷积报错:CSTPSCEX.explode_sc_cost_flags():40:ORA-01476: 除数为 0
成本卷积请求:供应链成本累计 - 打印报表 运行后报一下错误: MSG-00000: Rollup ID = 236403MSG-00000: Before CSTPSCEX.supply_chain ...
- Oracle 11.2.0.4.0 Dataguard部署和日常维护(1)-数据库安装篇
本次测试环境 系统版本 CentOS release 6.8 主机名 ec2t-userdata-01 ec2t-userdata-01 IP地址 10.189.102.118 10.189.100. ...
- oracle 12.1.0.2中对象锁对系统的较大影响
环境:oracle 12.1.0.2 rac ,4节点 一.概述 通常来说,如果是oltp应用,那么部署在rac上,是不错的注意. 但实现情况中,往往是混合类型,既有OLTP也有OLAP. 如果没有 ...
- Oracle 11.2.0.4单实例打PSU,OJVM PSU补丁快速参考
写在前面: 1.Oracel打每个补丁的操作有时存在差异,所以不管多熟悉,都应该在打任何补丁之前阅读新补丁中附带的readme. 2.Oracle每季度都会更新一个最新的PSU,本文最新指的是当前最新 ...
- Oracle 11.2.0.4 RAC安装最新PSU补丁
环境:两节点RAC(RHEL 6.4 + GI 11.2.0.4 + Oracle 11.2.0.4) 需求:安装最新PSU补丁11.2.0.4.7 1.下载补丁和最新OPatch 2.检查数据库当前 ...
- Oracle 11.2.0.4 DataGuard 环境打PSU,OJVM PSU补丁快速参考
环境:RHEL6.5 + Oracle 11.2.0.4 DataGuard physical standby 主库和备库都是单节点. 需求:主备库同时应用160719的PSU和OJVM PSU补丁. ...
随机推荐
- 微信小程序开发——苹果手机领取卡券出现参数错误(安卓正常)
异常描述: 微信小程序领取卡券,调用 wx.addCard 接口,安卓手机正常调起领取卡券界面,苹果手机.微信开发者工具中均出现“参数错误”,如图: 异常解析: 安卓手机能正常调起领取界面,那就说明领 ...
- SQL Server2005/2008 作业执行失败的解决办法
数据库:SQL Server 2005/2008,运行环境:Windows Server 2008 在数据库里的所有作业都执行失败,包括自动执行和手动执行.在事件查看器里看到的错误报告如下: 该 作 ...
- sql2000三个表的级联删除
sql2000中三个表级联删除 create table a( id int primary key, Content varchar(50)) create table b( id ...
- netty 之 传统的阻塞io 体系回顾
io 体系回顾: 流的概念: java 程序 通过流来进行完成输入与输出的.流是生产或者消费信息的抽象,流通过java 的 输入/输出系统与物理设备相连,尽管与他们链接的物理设备不尽相同,所有流的行为 ...
- CMake命令
CMake手册详解,作者翻译的很详细,以下是自己进行的摘录: CMake80个命令(详细解释可以看here) CMD#1: add_custom_command为生成的构建系统添加一条自定义的构建规则 ...
- u-boot之make all执行过程分析
在执行make 100ask24x0_config之后就配置完成了针对JZ2440开发板的UBOOT,接下来需要执行make all进行编译链接最终生成u-boot.map.u-boot.srec.u ...
- Junit4知识梳理
一.junit官网 junit4:http://junit.org/junit4/ junit5:http://junit.org/junit5/ 二.github junit4: https://g ...
- Ubuntu 软件包管理工具 dpkg, APT 的一些命令(转载)
转载地址: http://www.dreamxu.com/ubuntu-package-dpkg-and-apt-commands/ dpkg dpkg 是由 Debian 开发的包管理系统,是一个比 ...
- Openflow的架构+源码剖析 转载
Openvswitch的架构网上有如下的图表示: Openvswitch原理与代码分析(1):总体架构 Openvswitch原理与代码分析(2): ovs-vswitchd的启动 Openvswit ...
- N! (大数,优化)
Problem Description 输出N的阶乘.(注意时间限制150ms&&注意不能打表后输出) 打表的定义:在本地主机预先计算出了每个值对应的答案,并把输入和输出的映射直接写入 ...