oracle 计算年累计,ORACLE计算累计和
先来看一下表中的原始数据
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计算累计和相关推荐
- oracle pi 3.14,Oracle中实现圆周率计算(一)
今天两个同事用JAVA实现圆周率一百位小数的实现.一个同事问我要不要试试,由于很长时间没有写过JAVA代码,而且本身JAVA的水平就很差,于是打算用ORACLE实现. 其实Oracle中使用现成的函数 ...
- oracle连续周数,详细讲解Oracle数据库的“周数计算”
详细讲解Oracle数据库的"周数计算"以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! --日期计算 ...
- 【DB笔试面试622】在Oracle中,说说COUNT(*)计算行数有哪些优化手段?
♣ 题目部分 在Oracle中,说说COUNT(*)计算行数有哪些优化手段? ♣ 答案部分 手段 命令 执行计划 主要原理 详细说明 性能情况 全表扫描 TABLE ACCESS FULL 全表扫描 ...
- 软考-高项计算1--投资回收周期计算(涉及概念:投资回收期 折现因子 净现值 累计净现值 现金流 累计净现金流)
软考-高项计算1–投资回收周期计算(涉及概念:投资回收期 折现因子 净现值 累计净现值 现金流 累计净现金流) 投资回收期 折现因子 净现值 累计净现值 现金流 累计净现金流 静态投资回报率: 现金流 ...
- oracle 中的pi,Oracle中实现圆周率计算(一)
今天两个同事用JAVA实现圆周率一百位小数的实现.一个同事问我要不要试试,由于很长时间没有写过JAVA代码,而且本身JAVA的水平就很差,于是打算用ORACLE实现. 其实Oracle中使用现成的函数 ...
- 【SQL开发实战技巧】系列(十四):计算消费后的余额计算银行流水累计和计算各部门工资排名前三位的员工
系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...
- oracle 怎么计算年数,详细讲解Oracle数据库的“周数计算”
详细讲解Oracle数据库的"周数计算" 2008-03-18 eNet&Ciweek 2)iw的算法为星期一至星期日算一周,且每年的第一个星期一为第一周, 例如20050 ...
- oracle中求差,Oracle计算月差
原先在一个计算费用的Oracle视图中用来计算月数的算法是只要求30天算一个月,于是只要总天数除以30就可以,在Oracle中用ceil函数取大于或等于两个日期相减结果的最小整数,即有小数就往上取整, ...
- 分组求和计算_excel聚合、累计、分组累计、分组聚合函数
1.excel使用函数前须知: F1键:获取帮助:F4键:切换相对引用和绝对引用:锁定行:=A$1:锁定列:=$A1:锁定行和列:=$A$1:拼接:& 2.excel基本聚合函数: count ...
- pandas 计算累计和及累计占比
累计和:cumsum() 总量累计:sum() 累计占比:selectgroup['CellMRCount'].cumsum()/selectgroup['CellMRCount'].sum()
最新文章
- Swin Transformer升级版来了!30亿参数,刷榜多项视觉任务,微软亚研原班人马打造...
- ConfigParser MissingSectionHeaderError: File contains no section headers.
- (002) java后台开发之对象初始化
- 与nlp相关的模型概览
- 计算机网络 闯关,2009计算机网络考研试题过关必练.docx
- 前端学习(554):node实现登录和注册第二部分代码
- 计算机数学基础模拟试题,计算机数学基础(A)模拟试题.doc
- openjdk怎么执行java命令_Ubuntu 18.04 上使用 OpenJDK 安装并运行 Tomcat
- 活动目录管理中常用的脚本(一)
- 毛概社会实践报告3000字
- 三大运营商移动电话用户总数公布了 同比增长6.2%
- 5步详解PHP文件上传功能的实现
- bzoj 2169: 连边
- 【linux】dpkg info修复及dpkg: warning: files list file for package
- 高德 各省市区县poi及区划名称 代码/高德历史poi
- NanoHTTPD服务
- python--模拟掷骰子游戏
- 依赖计算机英语作文,过度依赖电脑的危害的英文作文
- FOC控制中电流环带宽
- Solidity动态数组汇编开发教程