文档章节

oracle实现累加,累计百分比计算

铂金小猴
 铂金小猴
发布于 2017/08/02 14:42
字数 221
阅读 24
收藏 0

这几天一直在搞报表,发现Oracle真的很强大,需要用到累加功能,发现强大的oracle还真有,用over(order by field)解决的

例子:

数据表中最后一列就是累加的效果

累加sql:

select substr(hn.fd_sjsxsj_time,1,7) 日期,

          sum(hn.fd_sh_workload) 工作量,

          sum(sum(hn.fd_sh_workload)) over(order by substr(hn.fd_sjsxsj_time,1,7)) 累加

from tjstat.his_need hn

where substr(hn.fd_sjsxsj_time,1,4) = '2017'

group by substr(hn.fd_sjsxsj_time,1,7)

order by substr(hn.fd_sjsxsj_time,1,7);

 

趁热打铁,根据累计求和,进一步求占总和的百分比

例子:

​sql:

思路:计算累计百分比,先求列和,然后嵌套求百分比

select t1.*,round(t1.accu_sum/t2.allsum*100,2)||'%' from (select substr(hn.fd_sjsxsj_time,1,7) 日期,

sum(hn.fd_sh_workload) 工作量,

sum(sum(hn.fd_sh_workload)) over(order by substr(hn.fd_sjsxsj_time,1,7)) accu_sum

from tjstat.his_need hn

where substr(hn.fd_sjsxsj_time,1,4) = '2017'

group by substr(hn.fd_sjsxsj_time,1,7)

order by substr(hn.fd_sjsxsj_time,1,7))t1,(select sum(hn.fd_sh_workload) allsum from tjstat.his_need hn where substr(hn.fd_sjsxsj_time,1,4) = '2017') t2

© 著作权归作者所有

共有 人打赏支持
铂金小猴
粉丝 17
博文 41
码字总数 6785
作品 0
南开
程序员
opencv 直方图匹配 图片颜色迁移

两张原始图片,相互迁移颜色 结果 因为直方图可以表示颜色的分布情况,而通过直方图匹配算法可以将一幅图像的直方图分布复制给另一副图,从而让目标图像拥有原始图像信息 首先计算src与目标图...

阿豪boy
08/25
0
0
最实用的帕累托分析模板

谨以此文纪念意大利经济学家帕累托。 帕累托与ABC分类法 很多人都知道80/20帕累托法则(20%的人掌握着80%的财富),而ABC分类法可以说是该法则的衍生,目的是把握关键,分清主次。 比如一共有...

马世权
2017/08/13
0
0
JS Array.prototype.reduce的一些理解

Array.prototype.reduce在以前用的不多,在字节跳动面试的时候问到了这个问题,后面就去看了下 MDN,稍微对它理解了些 用法 方法将数组从左到右的每个元素依次传入回调函数 👇是些常用到的...

吃枣药丸
前天
0
0
TDEngine 压力测试思路

TDEngine 压测思路 消息分发复用TDEngine底层的逻辑,包括连接建立,消息读取,消息发送,消息执行,定时器执行 压测控制stress_testd(https://github.com/tickbh/tdengine/blob/master/scr...

tickbh
2016/05/30
490
0
reduce与redux中compose函数

在说compose函数之前,我们先来看一道题目: image.png Your task is to write a higher order function for chaining together a list of unary functions. In other words, it should retu......

极客教程
2017/11/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

初级开发-编程题

` public static void main(String[] args) { System.out.println(changeStrToUpperCase("user_name_abc")); System.out.println(changeStrToLowerCase(changeStrToUpperCase("user_name_abc......

小池仔
今天
5
0
现场看路演了!

HiBlock
昨天
16
0
Rabbit MQ基本概念介绍

RabbitMQ介绍 • RabbitMQ是一个消息中间件,是一个很好用的消息队列框架。 • ConnectionFactory、Connection、Channel都是RabbitMQ对外提供的API中最基本的对象。Connection是RabbitMQ的s...

寰宇01
昨天
9
0
官方精简版Windows10:微软自己都看不过去了

微软宣布,该公司正在寻求解决方案,以减轻企业客户的Windows 10规模。该公司声称,企业客户下载整个Windows 10文件以更新设备既费钱又费时。 微软宣布,该公司正在寻求解决方案,以减轻企业...

linux-tao
昨天
19
0
TypeScript基础入门之JSX(二)

转发 TypeScript基础入门之JSX(二) 属性类型检查 键入检查属性的第一步是确定元素属性类型。 内在元素和基于价值的元素之间略有不同。 对于内部元素,它是JSX.IntrinsicElements上的属性类型...

durban
昨天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部