Oracle中计算除法 ,解决除数为零报错问题

简介: Oracle中计算除法 ,解决除数为零报错问题

1:  在Oracle数据库中,需要使用到除法,但是除数有可能为零,如果直接使用sql中的除法运算符(/),则会报错

解决方法:

计算除法的语法和示例

--Oracle中计算除法语法
SELECT case WHEN(NVL(除数, 0))!=0 THEN round(被除数 / 除数,需要保留的小数位数) ELSE 0 END result FROM DUAL

例子:

SELECT
 t4.NAME,
 t4."总成本",
 t4."营业额",
 t4."利润",
 CASE WHEN(NVL( t4."总成本", 0)) !=0 
  THEN
  ROUND(t4."利润" / t4."总成本" , 2) 
  ELSE
  0
  END 
 "利润率"  
 FROM
  (
   WITH linshi AS (
   SELECT
   t2.NAME,
    (t2.PUR_PRICE * t1.SALE_NUM) + t1.HUMAN_COST + t1.TRAN_COST + t1.OTH_COST AS "总成本",
    t2.PRICE * t1.SALE_NUM AS "营业额" 
   FROM
    BRAIN_BAK.TEST_DW_ITEMS_DETA t1
    INNER JOIN BRAIN_BAK.TEST_DW_ITEMS_PRICE t2 ON t1.NAME = t2.NAME 
   )   --一张临时表
  SELECT
  t3.NAME,
   t3."总成本",
   t3."营业额",
   t3."营业额" - t3."总成本" AS "利润" 
  FROM linshi t3 
  ) t4 ;

2:使用 decode ()函数

decode(A.REFORM_TASK_TOTAL,0,0 ,
round((A.REFORM_TASK_NUM / A.REFORM_TASK_TOTAL) * 100,2 )) 
AS 年度改革任务整改完成率,


目录
相关文章
|
2月前
|
Oracle 关系型数据库 分布式数据库
PolarDB常见问题之PolarDB(Oracle兼容版) 执行命令报错如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
3月前
|
SQL Oracle 关系型数据库
Oracle查询优化-计算字符在字符串中出现的次数
【2月更文挑战第3天】【2月更文挑战第7篇】只接上SQL
58 0
|
5月前
|
SQL Oracle 关系型数据库
Oracle之日期计算相关函数
Oracle之日期计算相关函数
45 0
|
8月前
|
Oracle 关系型数据库 Java
云服务器安装oracle修改IP地址监听器报错问题
当在云服务器中安装oracle时,按照一般的安装步骤安装后,需要修改两个文件的iIP地址才可以在本机进行访问,修改注意点: 监听器部分不要改成服务器的公网IP,要改成服务器的计算机名字才可以,两个配置文件夹均要修改
70 0
|
3天前
|
DataWorks Oracle 关系型数据库
DataWorks操作报错合集之尝试从Oracle数据库同步数据到TDSQL的PG版本,并遇到了与RAW字段相关的语法错误,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
15 0
|
2月前
|
Oracle 关系型数据库 MySQL
Flink CDC产品常见问题之使用cdc-Oracle连接器报错如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
Flink CDC产品常见问题之使用cdc-Oracle连接器报错如何解决
|
3月前
|
Oracle 关系型数据库 Apache
Flink cdc报错问题之同步oracle报错如何解决
Flink CDC报错指的是使用Apache Flink的Change Data Capture(CDC)组件时遇到的错误和异常;本合集将汇总Flink CDC常见的报错情况,并提供相应的诊断和解决方法,帮助用户快速恢复数据处理任务的正常运行。
|
5月前
|
SQL Oracle 关系型数据库
Oracle之有哪些日期计算函数?
Oracle之有哪些日期计算函数?
114 0
|
5月前
|
Oracle 关系型数据库 数据库
oracle数据恢复—服务器断电导致Oracle数据库报错的数据恢复案例
一台Windows server操作系统的服务器上部署Oracle数据库。 服务器意外断电导致oracle数据库报错,报错信息:“system01.dbf需要更多的恢复来保持一致性”。由于该oracle数据库并没有备份,仅有一些断断续续的归档日志,无法通过备份文件恢复oracle数据库的数据。管理员联系北亚企安数据恢复中心要求修复Oracle数据库。
oracle数据恢复—服务器断电导致Oracle数据库报错的数据恢复案例
|
4月前
|
Oracle 关系型数据库
【Oracle报错】[INS-13001] 环境不满足最低要求。
【Oracle报错】[INS-13001] 环境不满足最低要求。

推荐镜像

更多