如何删除表记录中重复的字段

在维护公司的数据库时,在操作使用中发现某表没有设置“主键”,可能是当时设计数据库时没有规范。而且里面出现的重复记录。

那么首先找出重复记录(先在这个表增加一个新的递增列):

select min(id) as id from Tuserandreport
group by usercode,reportname
having count(*) > 1

然后就可以删除它了

delete Tuserandreport where id in
(select min(id) as id from Tuserandreport
group by usercode,reportname
having count(*) > 1
)

最后可以删除这个递增列,设置实际需要的列为主键。留此备注。

转载于:https://www.cnblogs.com/sofire/archive/2010/03/11/1683133.html

猜你喜欢

转载自blog.csdn.net/weixin_34220623/article/details/92637949