出口給報關行出貨的時候,同一票shipment中合併多個invoice跟packing,轉出到廠商的報關系統時候,出口報關的序號會將invoice的序號做自動增加。

因為wafer會有出口給其他外包做初階加工,加工完之後再回貨,回貨就是需要再進口回來。進口做報關的時候就會有原出口的報單號碼,也需要明確到報單的項次。

因為原本出口并沒有字段記錄對於的出口報關項次,所以只能重新去計算一遍。

舉例如下,SI# 100600486為兩筆invoice並單出貨,第一筆INV#100614-03-CSS有30個項次,第二筆INV#100615-01-CSS有11個項次。

SELECT M.SHIPMENT_ID, I.INV_NO, I.SEQ_NO, I.WIP_ENTITY_NAME,I.DESCP
FROM DECL_INV M, DECL_INV_ITEM I
WHERE M.INV_NO = I.INV_NO
AND M.DOC_FLAG = 'D'
AND I.DOC_FLAG = 'D'
AND M.SHIPMENT_ID = ''
SHIPMENT_ID INV_NO SEQ_NO WIP_ENTITY_NAME DESCP
100600486 100614-03-CSS 1 227470 6" Wafer
100600486 100614-03-CSS 2 227471 6" Wafer
100600486 100614-03-CSS 3 227472 6" Wafer
100600486 100614-03-CSS 4 227473 6" Wafer
100600486 100614-03-CSS 5 227474 6" Wafer
100600486 100614-03-CSS 6 227475 6" Wafer
100600486 100614-03-CSS 7 227476 6" Wafer
100600486 100614-03-CSS 8 227477 6" Wafer
100600486 100614-03-CSS 9 227478 6" Wafer
100600486 100614-03-CSS 10 227479 6" Wafer
100600486 100614-03-CSS 11 227480 6" Wafer
100600486 100614-03-CSS 12 227481 6" Wafer
100600486 100614-03-CSS 13 227482 6" Wafer
100600486 100614-03-CSS 14 227484 6" Wafer
100600486 100614-03-CSS 15 227485 6" Wafer
100600486 100614-03-CSS 16 227487 6" Wafer
100600486 100614-03-CSS 17 227488 6" Wafer
100600486 100614-03-CSS 18 227491 6" Wafer
100600486 100614-03-CSS 19 227493 6" Wafer
100600486 100614-03-CSS 20 227495 6" Wafer
100600486 100614-03-CSS 21 227496 6" Wafer
100600486 100614-03-CSS 22 227497 6" Wafer
100600486 100614-03-CSS 23 227498 6" Wafer
100600486 100614-03-CSS 24 227499 6" Wafer
100600486 100614-03-CSS 25 227500 8" Wafer
100600486 100614-03-CSS 26 227501 8" Wafer
100600486 100614-03-CSS 27 227502 6" Wafer
100600486 100614-03-CSS 28 227503 5" Wafer
100600486 100614-03-CSS 29 227504 5" Wafer
100600486 100614-03-CSS 30 227505 5" Wafer
100600486 100615-01-CSS 1 227748 6" Wafer
100600486 100615-01-CSS 2 227753 6" Wafer
100600486 100615-01-CSS 3 227754 6" Wafer
100600486 100615-01-CSS 4 227756 6" Wafer
100600486 100615-01-CSS 5 227757 6" Wafer
100600486 100615-01-CSS 6 227758 6" Wafer
100600486 100615-01-CSS 7 227759 6" Wafer
100600486 100615-01-CSS 8 227761 6" Wafer
100600486 100615-01-CSS 9 227762 6" Wafer
100600486 100615-01-CSS 10 227765 5" Wafer
100600486 100615-01-CSS 11 227766 6" Wafer
SELECT rank() over(partition by M.SHIPMENT_ID ORDER BY I.INV_NO ASC, I.SEQ_NO ASC) DECLEAR_SEQ_NO,
M.SHIPMENT_ID,
I.INV_NO,
I.SEQ_NO,
I.WIP_ENTITY_NAME,
I.DESCP
FROM DECL_INV M, DECL_INV_ITEM I
WHERE M.INV_NO = I.INV_NO
AND M.DOC_FLAG = 'D'
AND I.DOC_FLAG = 'D'
AND M.SHIPMENT_ID = ''

這裡其實主要是用到RANK函數,依據INV NO跟SEQ NO來做排序得到一個排序之後的序號,結果如下:

DECLEAR_SEQ_NO SHIPMENT_ID INV_NO SEQ_NO WIP_ENTITY_NAME DESCP
100600486 100614-03-CSS 1 227470 6" Wafer
100600486 100614-03-CSS 2 227471 6" Wafer
100600486 100614-03-CSS 3 227472 6" Wafer
100600486 100614-03-CSS 4 227473 6" Wafer
100600486 100614-03-CSS 5 227474 6" Wafer
100600486 100614-03-CSS 6 227475 6" Wafer
100600486 100614-03-CSS 7 227476 6" Wafer
100600486 100614-03-CSS 8 227477 6" Wafer
100600486 100614-03-CSS 9 227478 6" Wafer
100600486 100614-03-CSS 10 227479 6" Wafer
100600486 100614-03-CSS 11 227480 6" Wafer
100600486 100614-03-CSS 12 227481 6" Wafer
100600486 100614-03-CSS 13 227482 6" Wafer
100600486 100614-03-CSS 14 227484 6" Wafer
100600486 100614-03-CSS 15 227485 6" Wafer
100600486 100614-03-CSS 16 227487 6" Wafer
100600486 100614-03-CSS 17 227488 6" Wafer
100600486 100614-03-CSS 18 227491 6" Wafer
100600486 100614-03-CSS 19 227493 6" Wafer
100600486 100614-03-CSS 20 227495 6" Wafer
100600486 100614-03-CSS 21 227496 6" Wafer
100600486 100614-03-CSS 22 227497 6" Wafer
100600486 100614-03-CSS 23 227498 6" Wafer
100600486 100614-03-CSS 24 227499 6" Wafer
100600486 100614-03-CSS 25 227500 8" Wafer
100600486 100614-03-CSS 26 227501 8" Wafer
100600486 100614-03-CSS 27 227502 6" Wafer
100600486 100614-03-CSS 28 227503 5" Wafer
100600486 100614-03-CSS 29 227504 5" Wafer
100600486 100614-03-CSS 30 227505 5" Wafer
100600486 100615-01-CSS 1 227748 6" Wafer
100600486 100615-01-CSS 2 227753 6" Wafer
100600486 100615-01-CSS 3 227754 6" Wafer
100600486 100615-01-CSS 4 227756 6" Wafer
100600486 100615-01-CSS 5 227757 6" Wafer
100600486 100615-01-CSS 6 227758 6" Wafer
100600486 100615-01-CSS 7 227759 6" Wafer
100600486 100615-01-CSS 8 227761 6" Wafer
100600486 100615-01-CSS 9 227762 6" Wafer
100600486 100615-01-CSS 10 227765 5" Wafer
100600486 100615-01-CSS 11 227766 6" Wafer

Oracle排序函數Rank的更多相关文章

  1. oracle decode(nvl(estimate_qty,0),0,1,estimate_qty) 函數

    oracle   decode(nvl(estimate_qty,0),0,1,estimate_qty) 函數

  2. Oracle Round 函式 (四捨五入)

    Oracle Round 函式 (四捨五入)描述 : 傳回一個數值,該數值是按照指定的小數位元數進行四捨五入運算的結果.SELECT ROUND( number, [ decimal_places ] ...

  3. js匿名函數

    (function($){})(jquery) == (function($){})(jQuery) 实际上是匿名函数 用于存放开发插件的代码 作用(非常有用): 这种写法的最大好处是形成闭包.在(f ...

  4. Math.Round函數

    Math.Round這個函數的解釋是將值按指定的小數位數舍入,但並不就是四捨五入.這種舍入有時稱為就近舍入或四舍六入五成雙 其實在 VB, VBScript, C#, J#, T-SQL 中 Roun ...

  5. C#判断奇偶数的函數

    // 现代流行的"程序员" public static bool IsOdd(int n) { while (true) { switch (n) { : return true; ...

  6. PHP 計算字符串長度函數

    PHP內置的字符串長度函數strlen無法正確處理中文字符串,它得到的只是字符串所占的字節數.對於GB2312的中文編碼,strlen得到的值是漢字個數的2倍,而對於UTF-8編碼的中文,就是3倍的差 ...

  7. SQL窗体函數一例

    需求: MSSQL,列出服務實例中全部數據庫的例如以下信息: 數據庫ID.數據庫名.創建日期.數據文件類型.數據文件大小.數據庫總大小.文件所在路徑. 寫法(後面的百分比為所花時間占比): -- 连接 ...

  8. js函數

    函數是什麼?函數就是被事件驅動或者調用執行的可重複的代碼塊. 函數聲明: 使用關鍵詞function,關鍵詞function大小敏感. function a{代碼塊} 局部變量: 在函數內部聲明的變量 ...

  9. concat函數 函數concat 可以用來合拼兩個或以上的字串。

    12. “Mexico 墨西哥”的首都是”Mexico City”. 顯示所有國家名字,其首都是國家名字加上”City”. concat函數 函數concat 可以用來合拼兩個或以上的字串. : SE ...

随机推荐

  1. HTTP API 设计指南

    本指南描述了一系列 HTTP+JSON API 的设计实践, 来自并展开于 Heroku Platform API 的工作.本指南指导着Heroku内部API的开发,我们希望也能对Heroku以外的A ...

  2. AIX rcp跨主机远程

    rcp用途:在本地主机和远程主机之间或者两个远程主机之间传输文件.详细用法可man rcp查看. 现在要把主机10.200.5.200的/tmp/work.sh(属主为root用户)拷贝到远程主机18 ...

  3. 【转】用Jmeter进行接口压力测试的步骤

    1.双击jmeter.bat 2.右键点击测试规划à添加àThreadsà线程组,此时在测试规划下边显露出来线程组选项.点击该选项,显露出来线程组界面.参变量线程数表达若干个烦请,参变量Ramp-Up ...

  4. CIDR地址分类

    CIDR(Classless Inter Domain Routing)改进了传统的IPv4地址分类.传统的IP分类将IP地址直接对应为默认的分类,从而将Internet分割为网络.CIDR在路由表中 ...

  5. 1138 Postorder Traversal

    题意:给出二叉树的前序序列后中序序列,输出其后序序列的第一个值. 思路:乍一看不就是前序+中序重建二叉树,然后后序遍历嘛!这么做当然不会有错,但是却没有真正领会本题的意图.本题并不是让我们输出后序序列 ...

  6. (转) Docker - Docker1.12服务发现,负载均衡和Routing Mesh

    看到一篇介绍 Docker swarm以及如何编排的好文章,挪放到这里,自己学习的同时也分享出来. 原文链接: http://wwwbuild.net/dockerone/414200.html -- ...

  7. web新特性 之 WebSocket

    详情参见:你真的了解WebSocket吗?     WebSocket系列教程   HTML5新特性之WebSocket WebSocket协议是基于TCP的一种新的协议.WebSocket最初在HT ...

  8. Node.js的原型继承函数util.inherits

    util.inherits(constructor, superConstructor)是一个实现对象间原型继承 的函数.JavaScript 的面向对象特性是基于原型的,与常见的基于类的不同.Jav ...

  9. STM32用有源蜂鸣器实现闹钟的声响

    有源蜂鸣器的声音是固定的,工作电压恒定,改变通断电的时间获得不同时长的音响,譬如连续音.快速短音.慢速长音(类似莫尔斯电报)来区分不同的报警信息. 简单的说,有源蜂鸣器只能发出一种声音,因为它的频率是 ...

  10. 【转载】C# 从服务器下载文件

    支持并尊重原创!原文地址:https://www.cnblogs.com/GoCircle/p/6429136.html 一.//TransmitFile实现下载 protected void But ...