先来看一下表中的原始数据

SQL> select ename,sal from emp;

ENAME             SAL

---------- ----------

SMITH             800

ALLEN            1600

WARD             1250

JONES            2975

MARTIN           1250

BLAKE            2850

CLARK            2450

SCOTT            3000

KING             5000

TURNER           1500

ADAMS            1100

ENAME             SAL

---------- ----------

JAMES             950

FORD             3000

MILLER           1300

14 rows selected.

OK,现在我们通过SUM()OVER()来实现累计的功能

SQL> select ename,sal,

2  sum(sal) over(order by sal) as total

3  from emp;

ENAME             SAL      TOTAL

---------- ---------- ----------

SMITH             800        800

JAMES             950       1750

ADAMS            1100       2850

WARD             1250       5350

MARTIN           1250       5350MILLER           1300       6650

TURNER           1500       8150

ALLEN            1600       9750

CLARK            2450      12200

BLAKE            2850      15050

JONES            2975      18025

ENAME             SAL      TOTAL

---------- ---------- ----------

SCOTT            3000      24025

FORD             3000      24025KING             5000      29025

仔细看一下红色标注出来的部分,好像有问题哦,因为两者的sal是一样的。下面我们在over()中加一个字段再看看结果。

SQL> select ename,sal,

2  sum(sal) over(order by sal,empno) as total

3  from emp;

ENAME             SAL      TOTAL

---------- ---------- ----------

SMITH             800        800

JAMES             950       1750

ADAMS            1100       2850

WARD             1250       4100

MARTIN           1250       5350

MILLER           1300       6650

TURNER           1500       8150

ALLEN            1600       9750

CLARK            2450      12200

BLAKE            2850      15050

JONES            2975      18025

ENAME             SAL      TOTAL

---------- ---------- ----------

SCOTT            3000      21025

FORD             3000      24025

KING             5000      29025

14 rows selected.

这下就好了,得到我们想要的正确结果了。因为光凭sal一个字段是无法唯一的标识一条记录的,加上empno字段就可以了。

oracle 计算年累计,ORACLE计算累计和相关推荐

  1. oracle pi 3.14,Oracle中实现圆周率计算(一)

    今天两个同事用JAVA实现圆周率一百位小数的实现.一个同事问我要不要试试,由于很长时间没有写过JAVA代码,而且本身JAVA的水平就很差,于是打算用ORACLE实现. 其实Oracle中使用现成的函数 ...

  2. oracle连续周数,详细讲解Oracle数据库的“周数计算”

    详细讲解Oracle数据库的"周数计算"以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! --日期计算 ...

  3. 【DB笔试面试622】在Oracle中,说说COUNT(*)计算行数有哪些优化手段?

    ♣ 题目部分 在Oracle中,说说COUNT(*)计算行数有哪些优化手段? ♣ 答案部分 手段 命令 执行计划 主要原理 详细说明 性能情况 全表扫描 TABLE ACCESS FULL 全表扫描 ...

  4. 软考-高项计算1--投资回收周期计算(涉及概念:投资回收期 折现因子 净现值 累计净现值 现金流 累计净现金流)

    软考-高项计算1–投资回收周期计算(涉及概念:投资回收期 折现因子 净现值 累计净现值 现金流 累计净现金流) 投资回收期 折现因子 净现值 累计净现值 现金流 累计净现金流 静态投资回报率: 现金流 ...

  5. oracle 中的pi,Oracle中实现圆周率计算(一)

    今天两个同事用JAVA实现圆周率一百位小数的实现.一个同事问我要不要试试,由于很长时间没有写过JAVA代码,而且本身JAVA的水平就很差,于是打算用ORACLE实现. 其实Oracle中使用现成的函数 ...

  6. 【SQL开发实战技巧】系列(十四):计算消费后的余额计算银行流水累计和计算各部门工资排名前三位的员工

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  7. oracle 怎么计算年数,详细讲解Oracle数据库的“周数计算”

    详细讲解Oracle数据库的"周数计算" 2008-03-18 eNet&Ciweek 2)iw的算法为星期一至星期日算一周,且每年的第一个星期一为第一周, 例如20050 ...

  8. oracle中求差,Oracle计算月差

    原先在一个计算费用的Oracle视图中用来计算月数的算法是只要求30天算一个月,于是只要总天数除以30就可以,在Oracle中用ceil函数取大于或等于两个日期相减结果的最小整数,即有小数就往上取整, ...

  9. 分组求和计算_excel聚合、累计、分组累计、分组聚合函数

    1.excel使用函数前须知: F1键:获取帮助:F4键:切换相对引用和绝对引用:锁定行:=A$1:锁定列:=$A1:锁定行和列:=$A$1:拼接:& 2.excel基本聚合函数: count ...

  10. pandas 计算累计和及累计占比

    累计和:cumsum() 总量累计:sum() 累计占比:selectgroup['CellMRCount'].cumsum()/selectgroup['CellMRCount'].sum()

最新文章

  1. Swin Transformer升级版来了!30亿参数,刷榜多项视觉任务,微软亚研原班人马打造...
  2. ConfigParser MissingSectionHeaderError: File contains no section headers.
  3. (002) java后台开发之对象初始化
  4. 与nlp相关的模型概览
  5. 计算机网络 闯关,2009计算机网络考研试题过关必练.docx
  6. 前端学习(554):node实现登录和注册第二部分代码
  7. 计算机数学基础模拟试题,计算机数学基础(A)模拟试题.doc
  8. openjdk怎么执行java命令_Ubuntu 18.04 上使用 OpenJDK 安装并运行 Tomcat
  9. 活动目录管理中常用的脚本(一)
  10. 毛概社会实践报告3000字
  11. 三大运营商移动电话用户总数公布了 同比增长6.2%
  12. 5步详解PHP文件上传功能的实现
  13. bzoj 2169: 连边
  14. 【linux】dpkg info修复及dpkg: warning: files list file for package
  15. 高德 各省市区县poi及区划名称 代码/高德历史poi
  16. NanoHTTPD服务
  17. python--模拟掷骰子游戏
  18. 依赖计算机英语作文,过度依赖电脑的危害的英文作文
  19. FOC控制中电流环带宽
  20. Solidity动态数组汇编开发教程

热门文章

  1. Arcgis栅格数据的裁剪
  2. cmd命令行由C盘进入D(其它)盘
  3. @RequestMapping与@GetMapping
  4. 深入探讨回归分析的假设条件、散点图以及解决方案
  5. 电商网站重点测试方向、测试点整理
  6. 全国计算机二级考试vf知识点总结,全国计算机等级考试二级VF知识点(完整版)..doc...
  7. PYQT5修改背景图
  8. Java实现字符串匹配
  9. 时间函数(运行时间、执行时间、定时)
  10. 荣耀magic3pro怎么隐藏应用