手工RUN:Import Delivery Lines後可能造成WSH_DELIVERY_DETAILS中資料重復
查核是否有重復資料,我用的SQL是
select a.*
from (
select l.org_id,h.order_number,h.header_id,
l.line_id,l.ordered_quantity,
(select sum(d.REQUESTED_QUANTITY)
from wsh_delivery_details d
where d.source_line_id=l.line_id
and d.source_header_id=l.header_id
and d.source_code='OE'
) d_qty
-- into &orgid,&order_no,&headerid,&lineid,&ordqty,&wshqty
from oe_order_lines_all l,oe_order_headers_all h
where l.org_id=:ORG_ID
and h.header_id=l.header_id
and l.open_flag='Y'
) a
where a.ordered_quantity<>d_qty
--我是用QTY來比較的
--依上面SQL出來如有記錄,則用LINE_ID作條件用下面的SQL檢視.
select l.line_id,l.ordered_item,l.ordered_quantity,l.CANCELLED_QUANTITY, d.REQUESTED_QUANTITY,
d.released_status,d.CREATED_BY,d.CREATION_DATE,
d.*
from wsh_delivery_details d,oe_order_lines_all l
where l.line_id in (6738108,6738118)
and l.line_id=d.source_line_id
and d.source_code='OE'
--有重復資料時,一般d.released_status會不同一個R,一個N.我都是將N的作CANCELLED(SQL如下)
update wsh_delivery_details
set SRC_REQUESTED_QUANTITY=0,
cancelled_quantity=SRC_REQUESTED_QUANTITY,
requested_quantity=0,
RELEASED_STATUS='D',
DATE_SCHEDULED=null
where delivery_detail_id in (6765925,6766661) --=6597192
commit --最後提交
[@more@]
select a.*
from (
select l.org_id,h.order_number,h.header_id,
l.line_id,l.ordered_quantity,
(select sum(d.REQUESTED_QUANTITY)
from wsh_delivery_details d
where d.source_line_id=l.line_id
and d.source_header_id=l.header_id
and d.source_code='OE'
) d_qty
-- into &orgid,&order_no,&headerid,&lineid,&ordqty,&wshqty
from oe_order_lines_all l,oe_order_headers_all h
where l.org_id=801
and h.header_id=l.header_id
and l.open_flag='Y'
) a
where a.ordered_quantity<>d_qty
select l.line_id,l.ordered_item,l.ordered_quantity,l.CANCELLED_QUANTITY, d.REQUESTED_QUANTITY,
d.released_status,d.CREATED_BY,d.CREATION_DATE,
d.*
from wsh_delivery_details d,oe_order_lines_all l
where l.line_id in (6738108,6738118)
and l.line_id=d.source_line_id
and d.source_code='OE'
update wsh_delivery_details
set SRC_REQUESTED_QUANTITY=0,
cancelled_quantity=SRC_REQUESTED_QUANTITY,
requested_quantity=0,
RELEASED_STATUS='D',
DATE_SCHEDULED=null
where delivery_detail_id in (6765925,6766661) --=6597192
commit
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/92289/viewspace-1038966/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 判斷表中資料是否有重複
- Run Out Of Space On UNDO Tablespace Using DataPump Import/ExportImportExport
- HTMLZip脫殼後的Import Table的修復 (750字)HTMLImport
- 重構smart-importImport
- ORACLE9I RMAN恢復資料庫後需要手工新增臨時資料檔案Oracle資料庫
- 【備份與恢復】archivelog模式中資料檔案的恢復Hive模式
- 【備份與恢復】noarchivelog模式中資料檔案的恢復Hive模式
- 達夢資料庫手工恢復相關命令資料庫
- 10W資料匯入該如何與庫中資料去重?
- Oracle手工完全恢復案例Oracle
- Oracle bug的手工修復Oracle
- 手工恢復控制檔案
- 刪除重復資料
- 研究發現22%的AI生成醫療建議可能導致死亡或造成嚴重傷害AI
- 甩手工具箱:如何打造成功的促銷活動
- 收料後無產生收料編號的手工處理
- Kafka SimpleStringSchema 可能會造成空指標異常Kafka指標
- [CareerCup] 13.1 Print Last K Lines 列印最後K行AST
- 電影AI修復,讓重溫經典有了新的可能AI
- v$sys_time_model的資料在重啟後會引復位
- 使用EXPDP/IMPDP匯入匯出表中資料/後設資料測試
- Oracle12c多租戶資料庫備份與恢復 - PDB中資料檔案的恢復Oracle資料庫
- Leaflet入門:新增點線面並匯入GeoJSON資料|Tutorial of Leaflet: Adding Points, Lines, Polygons and Import GeoJSON FileJSONGoImport
- API返回延遲,FPM重啟後恢復之後又重現 問題解決方案API
- 【資料庫資料恢復】突然斷電造成Syabse資料庫無法啟動的資料恢復案例資料庫資料恢復
- 【資料庫資料恢復】ORACLE常見資料災難&資料恢復可能性資料庫資料恢復Oracle
- Lines演示程式
- Telephone Lines S
- 資料洩露的12個可能後果
- npm run 指令碼背後的事情NPM指令碼
- run sql in the backgroud 後臺執行sqlSQL
- standby缺失primary歸檔,手工同步恢復
- 線上重定義造成某核心OLAP系統資料庫無規律間歇性重啟資料庫
- 復刻或重製老遊戲,可能並沒有想象中那麼簡單遊戲
- hutool去讀excel中資料Excel
- openGauss 更新表中資料
- 造成Windows系統變慢的八大可能(轉)Windows
- 資料檔案offline後unusable索引造成的問題索引