首页 > 开发 > 综合 > 正文

删除重复记录的问题

2024-07-21 02:33:16
字体:
来源:转载
供稿:网友

  这个问题本来很简单,但经常见有人问。采用过时的删除方法可能非常的慢,816以后版本可以采用新方法了。

useraccount表,主键为userid,有一个字段为手机号码mobilephone

假如重复的记录的比例不是很大

delete useraccount where rowid in (
select rid from
(select rowid rid,row_number() over(partition by mobilephone order by userid desc) rn from useraccount )
where rn > 1) ;

我是经常用这样的方法删除数据的,上百万记录删除几万条速度还是比较快的。当然假如大量都是重复的,还是干脆做temp表吧 :)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表