MySQL: Eliminar registres duplicats

Després de donar voltes a com eliminar els registres duplicats d’una taula MySQL he topat amb una solució força ràpida (en funció de la mida de la taula en qüestió) de fer-ho:

ALTER IGNORE TABLE nom_taula ADD UNIQUE INDEX(camp1,camp2,camp3);

D’aquesta manera es crearia un índex únic a la taula nom_taula amb els camps camp1,camp2,camp3 i s’eliminaria els registres que tinguessin aquessts camps iguals entre ells.

Per acabar, i si no el necessitem, eliminem l’índex únic i llestos 😉

oriol

oriol wrote 1166 posts

Post navigation