在SQL中怎么删除两个表中相同的数据

在SQL中怎么删除两个表中相同的数据,第1张

1,首先创建一个表,并在表中插入重复的记录,如下图所示

2,插入好以后就看见表中已经有重复的数据了,如下图所示。

3,接下来在删除之前我们记得一定先备份,如下图所示。

4,然后排除重复的记录可以通过distinct字段设置,如下图所示,然后将去重的数据插入到新表中。

5,接着看到数据表下面多出来一个刚建的新表,如下图所示。

6,最后打开新表,就可以看到重复的数据都没有了,如下图所示。

将数据去重复后暂存到临时表#a中

select distinct * into #a from table1 where 条件

delete table1 where 删除限制条件

insert into table1 select * from #a -将暂存的数据插回数据库

drop table #a -删除临时表

注:当前的数据库,每一个表都应该有一个标志字段,以保证记录不完全重复,否则实用中极易出问题。

扩展资料:

SQL语句删除掉重复的其他情况

1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断

SELECT

*

FROM

people

WHERE

peopleId IN (

SELECT

peopleId

FROM

people

GROUP BY

peopleId

HAVING

count(peopleId) >1

)

2、查找表中多余的重复记录(多个字段)

SELECT

*

FROM

vitae a

WHERE

(a.peopleId, a.seq) IN (

SELECT

peopleId,

seq

FROM

vitae

GROUP BY

peopleId,

seq

HAVING

count(*) >1

)

参考资料来源:结构化查询语言(SQL)-百度百科


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10811604.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-11
下一篇2023-05-11

发表评论

登录后才能评论

评论列表(0条)

    保存