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