码迷,mamicode.com
首页 > 其他好文 > 详细

删除表中重复记录

时间:2014-10-10 19:13:24      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:ar   table   rom   记录   select   value   ide   create   it   

create table myTable1
(
id int primary key identity,
col1 int,
col2 int
)

DECLARE @i int;
set @i=0;
WHILE @i<10
BEGIN
INSERT INTO myTable1 VALUES(@i,@i);
INSERT INTO myTable1 VALUES(@i,@i);
SET @i+=1;
End

--找到重复的记录
SELECT col1,col2 from myTable1 GROUP BY col1,col2 HAVING COUNT(*)>1

--找到重复的记录(col2和col1全部是一样的才是重复),并删掉重复记录
DELETE from mytable1 WHERE col1 IN (SELECT col1 from myTable1 GROUP BY col1,col2 HAVING COUNT(*)>1)
AND id NOT IN (SELECT MIN(id) from myTable1 GROUP BY col1,col2 HAVING COUNT(*)>1 )


SELECT *from myTable1

删除表中重复记录

标签:ar   table   rom   记录   select   value   ide   create   it   

原文地址:http://www.cnblogs.com/363546828/p/4016317.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!