项目中复合指标由配置好的基础指标公式解析后存到如下一张表中:

--Create table

create table TESTRRT

(

complexid NUMBER not null,--复合指标id

basicid VARCHAR2(20) not null,--基础指标id

chu VARCHAR2(20),--除法标示(a为分子,b为分母)

plus VARCHAR2(20),--乘法标示

direction NUMBER,--计算方向(1为正2为负)

value NUMBER

)

复合指标1:(1001+1003)/(1002-1004)=-12

复合指标2:1006*1007/(2011+2022)=1.5

复合指标3:1009*1010/1011=0.5

--单独除法关系的指标

select t.complexid,

decode(sum(case

when t.chu = 'b' and t.direction = 1 then

t.VALUE

when t.chu = 'b' and t.direction = 2 then

-t.VALUE

end),

0,

0,

sum(case

when t.chu = 'a' and t.direction = 1 then

t.VALUE

when t.chu = 'a' and t.direction = 2 then

-t.VALUE

end) / sum(case

when t.chu = 'b' and t.direction = 1 then

t.VALUE

when t.chu = 'b' and t.direction = 2 then

-t.VALUE

end))

from testrrt t

where t.complexid = 1

group by t.complexid

网上查找相关资料表明,

http://blog.sina.com.cn/s/blog_63f3c0b201015gh9.htmloracle的累乘用法已经被很多人使用过啦。

exp(y)

【功能】返回e的y次幂(e为数学常量)

【参数】y,数字型表达式

ln(y)

【功能】返回e为底的自然对数。

由于ln对应的y参数仅可为正数,所以如下进行连乘的方法只能针对正数,不包含负数哦~

--先乘后除指标【累乘算法:exp(ln(a)+ln(b)+ln(c))=a*b*c】

select t.complexid,

decode(exp(sum(ln(case

when t.plus = 'p' and t.chu = 'b' then

t.value

end))),0,0,exp(sum(ln(case

when t.plus = 'p' and t.chu = 'a' then

t.value

end)))/sum(case

when t.plus is null and t.chu = 'b' then

t.value

end)

)

mvalues

from testrrt t

where t.complexid in (2,3)

group by t.complexid

oracle如何实现累乘,由复合指标计算引起的oracle累乘相关推荐

  1. 数据产品通用复合指标查询计算的实践

    本文由作者王改革授权网易云社区发布. 一.背景和实现目标 在开发严选数据产品(大麦商品数据运营平台和移动数据工作台VIPAPP)的时候,最多的业务场景就是对实时和离线数据模型中查询.处理.统一数据结构 ...

  2. 技术实践 | 如何基于 Flink 实现通用的聚合指标计算框架

    导读:网易云信作为一个 PaaS 服务,需要对线上业务进行实时监控,实时感知服务的"心跳"."脉搏"."血压"等健康状况.通过采集服务拿到 ...

  3. 基础指标(原子指标)、复合指标、派生(衍生)指标的含义

    1.基础指标:指表达业务实体原子量化属性的且不可再分的概念集合,如交易笔数.交易金额.交易用户数等. 2.复合指标:指建立在基础指标之上,通过一定运算规则形成的计算指标集合,如平均用户交易额.资产负债 ...

  4. 流量悬浮物一体监测仪复合指标监测产品介绍

    一.产品概述 流量悬浮物一体监测仪集流量传感器和水质传感器于一体,属于复合指标监测产品,适合应用于地下受限空间内,对水量水质都有监测需求的场景.可用于排水管道.排水渠.排水口的在线流量测量.液位预警, ...

  5. 重磅----股票风险指标计算,附程序,百度网盘链接

    今天我们放假,回贵阳,准备实习,我也可以专心的去研究自己感兴趣的方向,我们计算股票指标包括beta,alpha,最大回撤,在险价值等,指标很多,我就不仔细介绍了,今天挺累的,我们直接看效果,弄成了图形 ...

  6. oracle使用 union all 用自增序列_值得收藏的Oracle数据库性能优化

    值得收藏的Oracle数据库性能优化 年尾了,新的一波面试军又要开始了,被问到最多的可能就是性能优化,尤其是数据库性能优化,这个面试题不管是初中高级工程师都会被问到.因此我觉得下面31点ORACLE优 ...

  7. oracle rac对心跳要求_关于心跳网络引起的Oracle RAC的节点驱逐(不是实例驱逐)...

    关于心跳网络引起的Oracle RAC的节点驱逐(不是实例驱逐) 问: 假设如下场景:4个节点rac,心跳线走的是千m网络交换机,若是该千M网络交换机断电,我想知道crs的驱逐节点的算法是怎么样的? ...

  8. 为多模型寻找模型最优参数、多模型交叉验证、可视化、指标计算、多模型对比可视化(系数图、误差图、混淆矩阵、校正曲线、ROC曲线、AUC、Accuracy、特异度、灵敏度、PPV、NPV)、结果数据保存

    使用randomsearchcv为多个模型寻找模型最优参数.多模型交叉验证.可视化.指标计算.多模型对比可视化(系数图.误差图.classification_report.混淆矩阵.校正曲线.ROC曲 ...

  9. R语言glm拟合logistic回归模型:模型评估(计算模型拟合的统计显著性)、模型评估(赤信息AIC指标计算)

    R语言glm拟合logistic回归模型:模型评估(计算模型拟合的统计显著性).模型评估(赤信息AIC指标计算) 目录

  10. R语言临床预测模型的评价指标与验证指标实战:C-index指标计算

    R语言临床预测模型的评价指标与验证指标实战:C-index指标计算 目录 R语言临床预测模型的评价指标与验证指标实战:C-index指标计算

最新文章

  1. Add margining capability to a dc/dc converter
  2. Python3 内置http.client,urllib.request及三方库requests发送请求对比
  3. Python 常见优化技巧,让你的程序溜溜的跑起来!
  4. Scenario 7 – HP C7000 VC FlexFabric Tunneled VLANs and SUS A/A vSphere
  5. Java:ThreadPoolExecutor解析续--Executors
  6. asp.net web开发步骤_WEB开发流程
  7. (01)VHDL介绍
  8. Linux内核哈希表分析与应用
  9. rust笔记4 slice类型
  10. HFSS阵列天线设计与仿真3
  11. 林子雨《大数据技术原理与应用》第五讲——NoSQL数据库
  12. 随机地图生成工具 fastMapper
  13. 微信平台自动获取Token
  14. 高中补习数学:导数与函数的综合问题(2019年测试题)
  15. PID控制器的离散化推导及其C语言实现
  16. 笔记本电脑计算机无法显示u盘,小编告诉你为什么笔记本电脑识别不了u盘
  17. 淘宝开店之旅_我要充一充
  18. QT: Linux下-错误提示cannot find -lGL
  19. java int溢出,结果只会保留低32位,高位会抛弃掉
  20. AccountManager.createAccount异常

热门文章

  1. 智课雅思词汇---二十四、名词性后缀ary(也是形容词后缀)
  2. c语言 设置线程优先级,C# Priority:多线程优先级设置
  3. STM32CubeMX配置DCMI+DMA之OV2640
  4. Android 退出登录实现
  5. 地球经纬度java语言表示_java根据2个经纬度点,计算这2个经纬度点之间的距离(通过经度纬度得到距离)-Go语言中文社区...
  6. 思岚激光雷达+cartographer建图
  7. 5大主流ASO优化工具
  8. 微信html游戏怎么作弊,微信小游戏跳一跳作弊技巧 跳一跳作弊方法介绍
  9. Java接入第三方微博登陆
  10. PT100热电阻简单介绍