oracle如何实现累乘,由复合指标计算引起的oracle累乘
项目中复合指标由配置好的基础指标公式解析后存到如下一张表中:
--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累乘相关推荐
- 数据产品通用复合指标查询计算的实践
本文由作者王改革授权网易云社区发布. 一.背景和实现目标 在开发严选数据产品(大麦商品数据运营平台和移动数据工作台VIPAPP)的时候,最多的业务场景就是对实时和离线数据模型中查询.处理.统一数据结构 ...
- 技术实践 | 如何基于 Flink 实现通用的聚合指标计算框架
导读:网易云信作为一个 PaaS 服务,需要对线上业务进行实时监控,实时感知服务的"心跳"."脉搏"."血压"等健康状况.通过采集服务拿到 ...
- 基础指标(原子指标)、复合指标、派生(衍生)指标的含义
1.基础指标:指表达业务实体原子量化属性的且不可再分的概念集合,如交易笔数.交易金额.交易用户数等. 2.复合指标:指建立在基础指标之上,通过一定运算规则形成的计算指标集合,如平均用户交易额.资产负债 ...
- 流量悬浮物一体监测仪复合指标监测产品介绍
一.产品概述 流量悬浮物一体监测仪集流量传感器和水质传感器于一体,属于复合指标监测产品,适合应用于地下受限空间内,对水量水质都有监测需求的场景.可用于排水管道.排水渠.排水口的在线流量测量.液位预警, ...
- 重磅----股票风险指标计算,附程序,百度网盘链接
今天我们放假,回贵阳,准备实习,我也可以专心的去研究自己感兴趣的方向,我们计算股票指标包括beta,alpha,最大回撤,在险价值等,指标很多,我就不仔细介绍了,今天挺累的,我们直接看效果,弄成了图形 ...
- oracle使用 union all 用自增序列_值得收藏的Oracle数据库性能优化
值得收藏的Oracle数据库性能优化 年尾了,新的一波面试军又要开始了,被问到最多的可能就是性能优化,尤其是数据库性能优化,这个面试题不管是初中高级工程师都会被问到.因此我觉得下面31点ORACLE优 ...
- oracle rac对心跳要求_关于心跳网络引起的Oracle RAC的节点驱逐(不是实例驱逐)...
关于心跳网络引起的Oracle RAC的节点驱逐(不是实例驱逐) 问: 假设如下场景:4个节点rac,心跳线走的是千m网络交换机,若是该千M网络交换机断电,我想知道crs的驱逐节点的算法是怎么样的? ...
- 为多模型寻找模型最优参数、多模型交叉验证、可视化、指标计算、多模型对比可视化(系数图、误差图、混淆矩阵、校正曲线、ROC曲线、AUC、Accuracy、特异度、灵敏度、PPV、NPV)、结果数据保存
使用randomsearchcv为多个模型寻找模型最优参数.多模型交叉验证.可视化.指标计算.多模型对比可视化(系数图.误差图.classification_report.混淆矩阵.校正曲线.ROC曲 ...
- R语言glm拟合logistic回归模型:模型评估(计算模型拟合的统计显著性)、模型评估(赤信息AIC指标计算)
R语言glm拟合logistic回归模型:模型评估(计算模型拟合的统计显著性).模型评估(赤信息AIC指标计算) 目录
- R语言临床预测模型的评价指标与验证指标实战:C-index指标计算
R语言临床预测模型的评价指标与验证指标实战:C-index指标计算 目录 R语言临床预测模型的评价指标与验证指标实战:C-index指标计算
最新文章
- Add margining capability to a dc/dc converter
- Python3 内置http.client,urllib.request及三方库requests发送请求对比
- Python 常见优化技巧,让你的程序溜溜的跑起来!
- Scenario 7 – HP C7000 VC FlexFabric Tunneled VLANs and SUS A/A vSphere
- Java:ThreadPoolExecutor解析续--Executors
- asp.net web开发步骤_WEB开发流程
- (01)VHDL介绍
- Linux内核哈希表分析与应用
- rust笔记4 slice类型
- HFSS阵列天线设计与仿真3
- 林子雨《大数据技术原理与应用》第五讲——NoSQL数据库
- 随机地图生成工具 fastMapper
- 微信平台自动获取Token
- 高中补习数学:导数与函数的综合问题(2019年测试题)
- PID控制器的离散化推导及其C语言实现
- 笔记本电脑计算机无法显示u盘,小编告诉你为什么笔记本电脑识别不了u盘
- 淘宝开店之旅_我要充一充
- QT: Linux下-错误提示cannot find -lGL
- java int溢出,结果只会保留低32位,高位会抛弃掉
- AccountManager.createAccount异常
热门文章
- 智课雅思词汇---二十四、名词性后缀ary(也是形容词后缀)
- c语言 设置线程优先级,C# Priority:多线程优先级设置
- STM32CubeMX配置DCMI+DMA之OV2640
- Android 退出登录实现
- 地球经纬度java语言表示_java根据2个经纬度点,计算这2个经纬度点之间的距离(通过经度纬度得到距离)-Go语言中文社区...
- 思岚激光雷达+cartographer建图
- 5大主流ASO优化工具
- 微信html游戏怎么作弊,微信小游戏跳一跳作弊技巧 跳一跳作弊方法介绍
- Java接入第三方微博登陆
- PT100热电阻简单介绍