ORACLE 按字段去除重復數據


背景:trade_info表,要根據trade_id去重;門架會產生重復數據,處理數據時只能先都插入表,再根據trade_id去重,業務上認為trade_id相同則記錄相同。

原理:利用oracle的rowid,用trade_id定位后,只留最大rowid的記錄。

結論:表不太大,有效,效率還可以。

 

DELETE FROM TRADE_INFO A

WHERE ROWID !=

(

  SELECT MAX(ROWID) FROM TRADE_INFO B

  WHERE A.TRADE_ID=B.TRADE_ID

)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM