码迷,mamicode.com
首页 > 其他好文 > 详细

去重的方法

时间:2020-01-14 13:10:59      阅读:79      评论:0      收藏:0      [点我收藏+]

标签:over   partition   重复   order   from   次数   order by   where   重复数据   

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

下面是一种解决方法

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来删除

去重的方法

标签:over   partition   重复   order   from   次数   order by   where   重复数据   

原文地址:https://www.cnblogs.com/TengQiuli/p/12191327.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!