您现在的位置是:网站首页> 编程资料编程资料
sql 删除表中的重复记录_MsSql_
2023-05-26
372人已围观
简介 sql 删除表中的重复记录_MsSql_
遇见了表中存在重复的记录的问题,直接写sql删除时最快的,才不要慢慢的复制到excel表中慢慢的人工找呢
如下sql,找出重复的记录,和重复记录中ID值最小的记录(表中ID为自增长)
select MIN(ID) as id, StructSN ,Date,UserID,StarCount,COUNT(StructSN) as c from T_Dor_StructStar where Date >= '20160919' group by StructSN ,Date,UserID,StarCount having COUNT(StructSN) > 1
然后就可以直接删除,基本原理就是,找到重复记录的每一条记录,排除掉重复id最小的记录,删除剩余的重复记录。
delete from T_Dor_StructStar where ID in ( select s.ID from T_Dor_StructStar s, ( select MIN(ID) as id, StructSN ,Date,UserID,StarCount,COUNT(StructSN) as c from T_Dor_StructStar where Date >= '20160919' group by StructSN ,Date,UserID,StarCount having COUNT(StructSN) > 1 )a where a.Date = s.Date and a.StructSN = s.StructSN and a.UserID = s.UserID and a.StarCount = s.StarCount and a.id != s.ID )
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
您可能感兴趣的文章:
相关内容
- Android实现矩形区域截屏的方法_MsSql_
- SQL Server 2005作业设置定时任务_MsSql_
- SQLServer地址搜索性能优化_MsSql_
- sqlServer实现去除字符串空格_MsSql_
- SQL Server 远程连接服务器详细配置(sp_addlinkedserver)_MsSql_
- SQLServer2005创建定时作业任务_MsSql_
- SQL Server:触发器实例详解_MsSql_
- Oracle 删除用户和表空间详细介绍_MsSql_
- SQLServer数据库从高版本降级到低版本实例详解_MsSql_
- Ubuntu 下安装SQL Server教程_MsSql_
