Technical Documentation Site

Version 0.9.0

Technical Cheat Sheets

SQL

Count and delete duplicate keys

Count duplicate keys in table

SELECT name, email, COUNT(*)
FROM contacts
GROUP BY name, email
HAVING COUNT(*) > 1

Delete duplicates while keeping the row with lowest id

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

Delete duplicates while keeping the row with highest id

DELETE c1 FROM contacts c1
INNER JOIN contacts c2
WHERE   c1.id < c2.id
AND c1.email = c2.email;
Last updated on 1 Oct 2021
Published on 1 Oct 2021
Edit on GitHub