SQL SERVER 删除表中重复的行

作者:风筝 | 创建时间: 2023-05-19
如果在建表时,没有设置序号、主键的情况下,表中出现重复的资料删除时,不能利用保留最小的rowid的方式来处理。小编也是通过网络和书籍查询总结,最后把最简单的操作方式分享给大家-----通过将不重复的行插入到临时表中的方法。...
SQL SERVER 删除表中重复的行

操作方法

首先我们查看数据库中重复的资料,以表 Line 为例,里面实际数据只有4条,有15条重复的 select * from dbo.Line 。

将不重复的数据查询出来并放到临时表中 select   distinct   *   into   #temp   from   Line 。

删除Line表中的内容 delete  Line 。

将临时表中的数据插入到表Line中 insert   Line   select * from   #temp

删除临时表#temp drop   table   #temp

再次查询结果就只剩下不重复的数据: select * from dbo.Line

附上完整的SQL语句,复制后更改表名可直接使用。 select   distinct   *   into   #temp   from   Line delete  Line go insert   Line   select * from   #temp go drop   table   #temp

点击展开全文

更多推荐