服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Oracle - Oracle表中重复数据去重的方法实例详解

Oracle表中重复数据去重的方法实例详解

2020-01-20 13:39字母哥 Oracle

这篇文章主要介绍了Oracle表中重复数据去重的方法实例详解的相关资料,需要的朋友可以参考下

Oracle表中重复数据去重的方法实例详解

我们在项目中肯定会遇到一种情况,就是表中没有主键 有重复数据 或者有主键 但是部分字段有重复数据 而我们需要过滤掉重复数据

下面是一种解决方法

?
1
2
3
4
5
6
delete from mytest ms
 where rowid in (select aa.rid
          from (select rowid as rid,
                row_number() over(partition by s.name order by s.id) as nu
              from mytest s) aa
         where aa.nu > 1)

row_number() over是分析函数 可以获得当前分组的出现次数 如果有重复的就会累加 2,3,4。。。这种,我们删除掉大于1的即可 删除通过rowid来删除

以上就是关于Oracle 去重的方法及简单实例的介绍,关于数据库的文章本站还有很多,欢迎大家搜索参阅,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://hanyingjun318.iteye.com/blog/2108001

延伸 · 阅读

精彩推荐