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

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

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

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

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

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

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

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

首先,先说明一个问题。这样的结果出现,说明系统设计是有问题的。

其次

删除重复数据,你要提供你是什么数据库。

不同数据库会有不同的解决方案。

关键字Distinct

去除重复,如下列SQL,去除Test相同的记录;

1.

select

distinct

Test

from

Table

2.

如果是要删除表中存在的重复记录,那就逻辑处理,如下:

3.

select

Test

from

Table

group

by

Test

having

count(test)>1

4.

先查询存在重复的数据,后面根据条件删除

还有一个更简单的方法可以尝试一下:

select

aid,

count(distinct

uid)

from

表名

group

by

aid

这是sqlserver

的写法。

如图一在数据表中有两个膀胱冲洗重复的记录。

2

可以通过sql语句“select

*from

表名

where

编码

in(select

编码

from

表名

group

by

编码

having

count(1)

>=

2)”来查询出变种所有重复的记录如图二

3

通过sql语句"

delete

from

表名

where

编码

in(select

编码

from

表名

group

by

编码

having

count(1)

>=

2)

and

编码

not

in

(select

max(编码)from

表名

group

by

编码

having

count(1)

>=2)

"来删除重复的记录只保留编码最大的记录


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

原文地址: https://outofmemory.cn/sjk/6620867.html

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

发表评论

登录后才能评论

评论列表(0条)

保存