mysql delete duplicate rows but keep one
snippet in sql

how to delete all duplicate items in mysql

user4259

DELETE FROM FriendsData WHERE fID 
       NOT IN ( SELECT fID FROM FriendsData 
                   GROUP BY UserID, FriendsUserID, IsSpecial, CreatedBy)

mysql delete duplicate rows

user4471

DELETE FROM table_name 
WHERE 
	id IN (
	SELECT 
		id 
	FROM (
		SELECT 
			id,
			ROW_NUMBER() OVER (
				PARTITION BY field_1
				ORDER BY field_1) AS row_num
		FROM 
			table_name
		
	) t
    WHERE row_num > 1
);

mysql delete older duplicates

user1333

 delete test
   from test
  inner join (
     select max(id) as lastId, email
       from test
      group by email
     having count(*) > 1) duplic on duplic.email = test.email
  where test.id < duplic.lastId;

mysql delete duplicate rows except one

user9485

DELETE FROM NAMES
 WHERE id NOT IN (SELECT * 
                    FROM (SELECT MIN(n.id)
                            FROM NAMES n
                        GROUP BY n.name) x)

mysql delete duplicate rows but keep one

user4217

DELETE c1 FROM contacts c1
INNER JOIN contacts c2 
WHERE
    c1.id > c2.id AND 
    c1.email = c2.email;