今天遇到一个客户的报表需求,在shipment的报表中要查看该shipment中的每个PO的采购数量,当前shipment的出货数量以及累计的所有出货数量。

要有累计的出货数,并且是要有顺序的累计出货数量,例如某个PO为A,出A相关的invoice有三张,如果也是三个shipment出货,三个invoice中该PO的出货数量分别为954、827、1305。打开shipment报表,会按invoice的时间(因为先开票才有出货单shipment)来计算已经累计的出货数量。

这边可以从INV_NO来取代INV DATE,因为INV NO后面接的实际上是日期时间,所以用INV_NO来排序是等效的。

数据如下:

这里主要用到的是SUM() OVER(ORDER BY)语法,即按INV NO升序去加总QTY

SELECT SQTY FROM (SELECT INV_NO,SUM(qty) over(ORDER BY INV_NO ASC) SQTY from TKINC
WHERE PART_NO='FLTS-T1603330' and color_no='095A'
AND QTY<>0 and AND SIZE_NAME='FOC') WHERE INV_NO='INV20161214115254982'

结果如下:

SELECT SQTY FROM (SELECT INV_NO,SUM(qty) over(ORDER BY INV_NO ASC) SQTY from TKINC
WHERE PART_NO='FLTS-T1603330' and color_no='095A'
AND QTY<>0 and AND SIZE_NAME='FOC') WHERE INV_NO='INV20161214115254982'

Oracle累计函数的更多相关文章

  1. Oracle over函数

    Oracle over函数   SQL code: sql over的作用及用法RANK ( ) OVER ( [query_partition_clause] order_by_clause )DE ...

  2. Oracle分析函数——函数列表

    --------------聚合函数 SUM :该函数计算组中表达式的累积和 MIN :在一个组中的数据窗口中查找表达式的最小值 MAX :在一个组中的数据窗口中查找表达式的最大值 AVG :用于计算 ...

  3. oracle add_months函数

    oracle add_months函数 add_months 函数主要是对日期函数进行操作,举例子进行说明 add_months 有两个参数,第一个参数是日期,第二个参数是对日期进行加减的数字(以月为 ...

  4. Oracle to_date()函数的用法

    Oracle to_date()函数的用法 to_date()是Oracle数据库函数的代表函数之一,下文对Oracle to_date()函数的几种用法作了详细的介绍说明,供您参考学习. 在Orac ...

  5. Oracle常用函数

    前一段时间学习Oracle 时做的学习笔记,整理了一下,下面是分享的Oracle常用函数的部分笔记,以后还会分享其他部分的笔记,请大家批评指正. 1.Oracle 数据库中的to_date()函数的使 ...

  6. Oracle SQL函数

    Oracle将函数大致分为单行函数,聚合函数和分析函数. 单行函数分为字符函数,日期函数,转换函数,数字函数,通用函数,decode函数 一.字符函数 1)大小写控制函数 01.Lower() 全部小 ...

  7. Oracle trunc()函数的用法

    Oracle trunc()函数的用法 /**************日期********************/1.select trunc(sysdate) from dual --2013-0 ...

  8. oracle中函数和存储过程的区别和联系【转载竹沥半夏】

    oracle中函数和存储过程的区别和联系[转载竹沥半夏] 在oracle中,函数和存储过程是经常使用到的,他们的语法中有很多相似的地方,但也有自己的特点.刚学完函数和存储过程,下面来和大家分享一下自己 ...

  9. 转,Oracle中关于处理小数点位数的几个函数,取小数位数,Oracle查询函数

    关于处理小数点位数的几个oracle函数() 1. 取四舍五入的几位小数 select round(1.2345, 3) from dual; 结果:1.235 2. 保留两位小数,只舍 select ...

随机推荐

  1. spring mvc 返回字符串带双引号及StringHttpMessageConverter乱码处理

    本文转载自:http://blog.csdn.net/wangyangbto/article/details/48804155 很多人都碰到过,SpringMVC使用 @ResponseBody 注解 ...

  2. Scanner的小实例

    package com.b; import java.util.Random; import java.util.Scanner; //猜拳游戏 1.人从键盘输入 2.计算机从电脑随机输入 3.条件判 ...

  3. Vue.js:安装

    ylbtech-Vue.js:安装 1.返回顶部 1. Vue.js 安装 1.独立版本 我们可以在 Vue.js 的官网上直接下载 vue.min.js 并用 <script> 标签引入 ...

  4. day1--心得

    info = ''' --------------------info of %s---------------- name: %s age: %s job: %s ----------------- ...

  5. js 正则匹配 小结

    JS的正则表达式 rge.test(str) 检验目标对象中是否包含匹配模式,并相应的返回true或false   rge.source str.search(rge) 将返回一个整数值,指明这个匹配 ...

  6. const&nbsp;int&nbsp;*pi与int&amp;nbs…

    此质料是摘要:<<彻底搞定C 指针 >>,自己感觉比较有价值,现与大家分享. 1. 从const int i 说起 你知道我们声明一个变量时象这样int i :这个i是可能在它 ...

  7. CSS鼠标手势大全

    实例: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3. ...

  8. solrCloud选举leader的逻辑分析

    First call *setup(ElectionContext) to ensure the election process is in it'd.    Next calljoinElecti ...

  9. 476. Number Complement 二进制中的相反对应数

    [抄题]: Given a positive integer, output its complement number. The complement strategy is to flip the ...

  10. 268. Missing Number序列中遗失的数字

    [抄题]: Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one that is ...