计算累加差

需求描述

需求:计算EMP表里SAL字段的累计乘积值,这里按照SAL、EMPNO排序.

解决方法:通过SUM OVER()函数来完成,这里SAL要取反,即SAL的负数.

注: 数据库数据集SQL脚本详见如下链接地址

员工表结构和数据初始化SQL脚本

SQL代码

-- Sql Server、Oracle:
SELECT deptno,sal,empno,SUM(CASE WHEN RN=1 THEN SAL ELSE -sal END)OVER(PARTITION BY deptno ORDER BY sal,empno) Accu_Diff FROM
(
SELECT deptno,sal,empno,ROW_NUMBER()OVER(PARTITION BY deptno ORDER BY sal,empno)RN
FROM emp
)A

执行结果

Mysql:暂未实现.

窗口分析函数_6_计算累加差相关推荐

  1. 窗口分析函数_5_计算累加乘

    计算累加乘 需求描述 需求:计算EMP表里SAL字段的累计乘积值,这里按照SAL.EMPNO排序. 解决方法:通过SUM OVER() EXP LOG LN函数来完成. 注: 数据库数据集SQL脚本详 ...

  2. 窗口分析函数_4_计算累加值

    计算累加值 需求描述 需求:计算EMP表里SAL字段的累加值,这里按照SAL.EMPNO排序. 解决方法:通过SUM OVER()函数来完成. 注: 数据库数据集SQL脚本详见如下链接地址 员工表结构 ...

  3. 窗口分析函数_17_计算百分位数

    计算百分位数 需求描述 需求:将EMP表里的部门编号为20的SAL字段按照由高到低排序取50百分位. 解决方法:通过percentile_cont OVER()来完成. 注: 数据库数据集SQL脚本详 ...

  4. 窗口分析函数_10_计算组总和的占比

    计算组总和的占比 需求描述 需求:计算EMP表按照deptno分组,计算每组的SAL总和与所以记录总和中的占比 解决方法:通过每组SUM(SAL)窗口函数再除以记录总和来实现. 注: 数据库数据集SQ ...

  5. 窗口分析函数_9_计算组内总和的占比

    计算组内总和的占比 需求描述 需求:计算EMP表按照deptno分组,计算SAL在每组总和中的占比 解决方法:通过每行的SAL除以每组的SUM(SAL)来实现. 注: 数据库数据集SQL脚本详见如下链 ...

  6. 窗口分析函数_8_计算某列的中间值

    计算某列的中间值 需求描述 需求:计算EMP表按照deptno分组,找出排在中间的SAL 解决方法:通过窗口函数集合COUNT(*)通过序号取模来判断. 注: 数据库数据集SQL脚本详见如下链接地址 ...

  7. (C++)设计一个程序能计算一个日期加上若干天后是什么日期and计算日期差值

    输入第一行表示样例个数m,接下来m行每行四个整数分别表示年月日和累加的天数. 输出m行,每行按yyyy-mm-dd的个数输出. #include<cstdio>//判断是否是闰年 bool ...

  8. 每个线程只对一个数据操作就不会出现线程安全问题-------------成员变量,用来计算累加的和...

    package charpter12; public class Processor implements Runnable { private int count; // 成员变量,用来计算累加的和 ...

  9. java前台计算date差_js前台计算两个日期的间隔时间

    js前台计算两个日期的间隔时间(时间差) 原创 2017年08月28日 16:09:43 标签:javascript 1144 在后台传来两个时间字段,从中解析出两个字符串类型的日期格式 需要在前台解 ...

最新文章

  1. 1091 Acute Stroke (30)(30 分)
  2. Py之pytest-shutil:Python库之pytest-shutil简介、安装、使用方法之详细攻略
  3. 高并发负载均衡(四):基于keepalived的LVS高可用搭建
  4. 【Mail】telnet收发邮件过程
  5. php类似微信聊天框,仿微信聊天功能
  6. [数据结构]A*寻路算法
  7. 转 海量数据处理(2)
  8. ITU-R BT601/BT709 BT656/BT1120区别与联系
  9. 本特利1900/65A-00-00-01-00-00监视器
  10. 使用Arcmap创建企业级地理数据库失败,无法连接到数据库
  11. Python面向对象加强3.面向对象中的索引,切片,比较操作以及上下文布尔值
  12. 工地泥浆流出大量邵阳抽泥浆罐车清理路面泥巴
  13. android tips 8 | mystra,Mystra是什么意思
  14. 架构设计:系统间通信(36)——Apache Camel快速入门(上)
  15. 基于改进K-means聚类和隐马尔可夫链的汽车行驶工况构建
  16. 关于如何安装linux系统
  17. 求微分方程用c语言怎么表达,使用C语言解常微分方程 C ODE
  18. 逗号用计算机怎么打,使用电脑如何输入特殊字符符号?这些输入小技巧一看就会...
  19. 现代计算机模型要求程序在执行前,大学计算机基础考试考点
  20. Ubuntu Desktop 软件源

热门文章

  1. VTK:八叉树时序用法实战
  2. VTK:网格上插值网格用法实战
  3. VTK:图像收缩用法实战
  4. wxWidgets 示例演示 wxWizard 控件
  5. wxWidgets:wxAuiManagerEvent类用法
  6. boost::sort模块实现整数排序测试
  7. boost::owner_less相关的测试程序
  8. boost::iostreams::newline用法的测试程序
  9. Boost:基于Boost的阻塞udp echo的测试程序
  10. VTK:可视化之ReverseAccess