社区
应用实例
帖子详情
高分请教一个SQL语句,顶者有分!!
fq_ln
2005-09-12 05:15:27
有一个表,包含ID,A,B,C等列,其中,ID为自增字段,且为主键。目前此表中的数据有重复,求一Sql语句将重复无用的数据删除,谢谢了!
问题解决,立即揭帖!!
...全文
390
27
打赏
收藏
高分请教一个SQL语句,顶者有分!!
有一个表,包含ID,A,B,C等列,其中,ID为自增字段,且为主键。目前此表中的数据有重复,求一Sql语句将重复无用的数据删除,谢谢了! 问题解决,立即揭帖!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
27 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
e1000Gb
2005-09-19
打赏
举报
回复
delete from 表
where ID not in (select min(id) from 表 group by A,B,C)
borgvardt
2005-09-19
打赏
举报
回复
答案已经有了
我帮顶
bugchen888
2005-09-19
打赏
举报
回复
libin_ftsafe(子陌红尘) 的是正解。
zwg166
2005-09-18
打赏
举报
回复
顶!
iwl
2005-09-18
打赏
举报
回复
1.方法一
可以不用语句
假设原来的表为Table,column重复则为重复,需要保留一笔即可
建立一张具有和Table相同结构的临时表myTable,单击鼠标右键,选择所有任务,选择管理索引,选择新建,起个索引名字,列就是column,建立一个索引,勾选上唯一(unique),勾选上忽略重复的值,其他不要选择!然后把资料insert into到临时表,
此时SQL Server会返回如下提示:
服务器: 消息 3604,级别 16,状态 1,行 1
已忽略重复的键。
它表明在产品信息临时表myTableA中不会有重复的行出现。
然后将原表Table清空,并将临时表myTable中数据导入,最后删除临时表myTable。
这样就完成了对表中重复记录的删除。该方法的执行速度都是相当快的,而且因为几乎不用写语句,所以它也是很安全的。不过要依靠你的column,万一你操作不当,没有关系,不要那么急着删除原来的表,这样不会出什么异常,错删除纪录!
2.如果你是认为要column1 、column2个子段相同才认为是重复,那么你就是组合字段为主键,方法也是如上
3.如果非要用语句,用 libin_ftsafe(子陌红尘) 的,因为你要key 值,如果没有就自己造一个,用identity(data_type,seed,increment),select到一个临时表,然后删除重复的,然后删除原表所有,然后插入即可
天地客人
2005-09-17
打赏
举报
回复
delete 表 where ID not in(select min(ID) from 表 group by A,B,C)
lisiyong
2005-09-17
打赏
举报
回复
delete 表名
where ID in(select min(ID)
from 表
group by A,B,C
having count(1)>1)
老本
2005-09-17
打赏
举报
回复
delete 表 where ID not in(select min(ID) from 表 group by A,B,C)
caobin518
2005-09-17
打赏
举报
回复
学到了知识
wangzhibing_3366
2005-09-16
打赏
举报
回复
declare @s table
([id] int identity(1,1),A varchar(20),B varchar(20),C varchar(20))
insert @s(A,B,C) values ('1','2','3')
insert @s(A,B,C) values ('1','2','3')
insert @s(A,B,C) values ('2','3','4')
insert @s(A,B,C) values ('2','3','4')
insert @s(A,B,C) values ('2','3','4')
insert @s(A,B,C) values ('3','4','5')
insert @s(A,B,C) values ('3','4','5')
delete from @s where id in( select [id] from @s b where exists (select * from @s c where
c.a=b.a and b.b=c.b and c.c=b.c and b.[id]>c.[id]))
flyinf_guo
2005-09-16
打赏
举报
回复
顶,
iwl
2005-09-13
打赏
举报
回复
delete from 表 a where
exists(select 1 from 表 where a.ID<ID and A=a.A and B=a.B and C=a.C)
youzelin
2005-09-13
打赏
举报
回复
长知识,顶
y2wxwsh000
2005-09-13
打赏
举报
回复
up
wwwhch2004
2005-09-13
打赏
举报
回复
delete a from 表 a where exists(select 1 from 表 where ID>a.ID and A=a.A and B=a.B and C=a.C)
可以!顶顶
撸大湿
2005-09-13
打赏
举报
回复
UP
samfeng_2003
2005-09-13
打赏
举报
回复
declare @s table
([id] int identity(1,1),A varchar(20),B varchar(20),C varchar(20))
insert @s(A,B,C) values ('1','2','3')
insert @s(A,B,C) values ('1','2','3')
insert @s(A,B,C) values ('2','3','4')
insert @s(A,B,C) values ('2','3','4')
insert @s(A,B,C) values ('2','3','4')
insert @s(A,B,C) values ('3','4','5')
insert @s(A,B,C) values ('3','4','5')
delete from @s
where [id] not in
(select [id] from @s b where not exists (select * from @s c where
c.a=b.a and b.b=c.b and c.c=b.c and b.[id]>c.[id]))
select * from @s
id A B C
----------- -------------------- -------------------- --------------------
1 1 2 3
3 2 3 4
6 3 4 5
accpbl0330
2005-09-13
打赏
举报
回复
select distinct * from 表名
只是用来查看不同的数据` 要删除重复的数据`同上^^
accpbl0330
2005-09-13
打赏
举报
回复
select distinct * from 表名
wyb0026
2005-09-13
打赏
举报
回复
delete tab from tab inner join
(select max(id) id ,a,b,c from tab group by a,b,c) as t0 on
tab.a=t0.a and
tab.b=t0.b and
tab,c=t0.c and
tab.id<>t0.id
加载更多回复(7)
软考高项论文50分秘籍——心法篇
讲师以52分和53分通过论文,2次
高分
通过,方法论经得起考验
基础类 -
SQL语句
基础类 -
SQL语句
<br />转载请标明出处: http://blog.csdn.net/hz/archive/2006/03/01/613376.asp 本文来自 CSDN 博客。x sql server 怎么跨库查询? 如何判断字符的大小写 ? 如何...
MS-SQL Server 基础类 -
SQL语句
请教
SQL语句
!!
SQL语句
_关于本条记录某一字段由上条记录的部分内容与本记录部分内容计算而来 棘手问题 關于顯示Money型數據的符號問題 如何修改数据库的名称? 调用dts包,在存储过程中dtsrun 如何写
请教
SQL语句
,...
oracle删除表空间死锁,oracle 中--怎么查看当前表空间在作什么操作?--查锁,死锁,当前执行时间长的
Sql语句
,没提交的事务,对象为哪些进程所用...
高分
请教
:怎么查看当前表空间在作什么操作?楼主Liangao(空白)2006-08-10 22:09:46 在 Oracle / 基础和管理 提问如何查看当前时刻在对某个表空间作什么样操作?如何查看某个会话进程在作什么样操作(如:执行过程,...
SQL | 窗口函数 row number + partition by 排序
目录 1 背景2 SQL牛逼函数走起来2.1 Step12.2 SQL实现12.3 Step22.4 SQL实现22.5 ...
SQL语句
3 头条面试SQL题3.1&nbs...
应用实例
27,580
社区成员
68,556
社区内容
发帖
与我相关
我的任务
应用实例
MS-SQL Server 应用实例
复制链接
扫一扫
分享
社区描述
MS-SQL Server 应用实例
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章