SQL查询,如何去除重复的记录

SQL查询,如何去除重复的记录,第1张

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

其次

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

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

关键字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)

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

因为你的数据库表中没有索引,修改表结构,增加一个索引列(里面的数据可以定为自动加1的方式),然后再删除就可以了

明白,按我说的做:

1、重新编辑表2的结构

2、增加1个列,名字随便取

3、设置这个新的列为自动加1

4、将这个列置为KEY

5、保存修改

6、进行删除 *** 作

7、 *** 作完毕再修改这个表的结构,把新增的列删除掉

8、应该就OK了

说真的,我也不清楚这个问题产生的原理,不过只要有作为KEY的列就不会出现这个问题

不建议直接删除,养成良好的习惯(删除更麻烦),以下是将去重后的数据转移到另一张表代码:

Insert into 表名(列名)select distinct 列名 from 表名

你可以按照去重的思路,删除重复数据

以上就是关于SQL查询,如何去除重复的记录全部的内容,包括:SQL查询,如何去除重复的记录、怎样删除数据库里的重复记录、mysql数据库中怎么删除重复的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/10185623.html

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

发表评论

登录后才能评论

评论列表(0条)

保存