Q - Delete duplicate data from a table.
A - First of all create a table -
create table del_duplicate
(
id int ,
name varchar (15),
class varchar (15)
)
insert records :
insert into del_duplicate values ('1','Abhishek','IT')
insert into del_duplicate values ('1','Abhishek','IT')
insert into del_duplicate values ('2','Amit','Civil')
insert into del_duplicate values ('2','Amit','Civil')
Query for delete duplicate data -:
Method 1:
SELECT DISTINCT id,name,class
INTO tempTable
FROM del_duplicate
GO
TRUNCATE TABLE del_duplicate
DROP TABLE del_duplicate
exec sp_rename 'tempTable', 'del_duplicate'
Method 2:
SET NOCOUNT ON
SET ROWCOUNT 1
WHILE 1 = 1
BEGIN
DELETE FROM del_duplicate
WHERE id IN (SELECT id
FROM del_duplicate
GROUP BY id
HAVING COUNT(*) > 1)
IF @@Rowcount = 0
BREAK ;
END
SET ROWCOUNT 0
A - First of all create a table -
create table del_duplicate
(
id int ,
name varchar (15),
class varchar (15)
)
insert records :
insert into del_duplicate values ('1','Abhishek','IT')
insert into del_duplicate values ('1','Abhishek','IT')
insert into del_duplicate values ('2','Amit','Civil')
insert into del_duplicate values ('2','Amit','Civil')
Query for delete duplicate data -:
Method 1:
SELECT DISTINCT id,name,class
INTO tempTable
FROM del_duplicate
GO
TRUNCATE TABLE del_duplicate
DROP TABLE del_duplicate
exec sp_rename 'tempTable', 'del_duplicate'
Method 2:
SET NOCOUNT ON
SET ROWCOUNT 1
WHILE 1 = 1
BEGIN
DELETE FROM del_duplicate
WHERE id IN (SELECT id
FROM del_duplicate
GROUP BY id
HAVING COUNT(*) > 1)
IF @@Rowcount = 0
BREAK ;
END
SET ROWCOUNT 0
great
ReplyDelete