Find and Delete Duplicate Records

//to find duplicate records
SELECT column_a, column_b, column_c, count(*)
FROM table_a
HAVING count(*) > 1
GROUP BY column_a, column_b, column_c


//to delete duplicate records

DELETE FROM x
WHERE rowid NOT IN
(SELECT max(rowid) FROM x
GROUP BY fieldname1,fieldname2,fieldname3..
HAVING count(*)>=1)

Comments