MySQL : trouver les doublons et dédoublonner

Publié le 26 octobre 2011 - Developpement Web. Tags :

Besoin de connaitre les doublons présents sur une table sql ?

Rien de plus simple, cette requête fera l’affaire :

SELECT field, count(*)
FROM table GROUP BY field
HAVING count(*) > 1

Pour le dédoublonnage à proprement parler vous devrez passer par une table temporaire (ou sinon il ne serait possible que ne supprimer que tous les enregistrements en double), quelque chose de ce type fera l’affaire :

DELETE
FROM table t1
WHERE EXISTS (SELECT *
FROM   table t2
WHERE  t1.field = t2.field
GROUP  BY field
HAVING COUNT(*) > 1)

Pensez à sauvegarder votre base de données avant, c’est plus prudent ;)


Articles sur ce thème :