MySQL. Cancellare record duplicati da una tabella

Per eliminare i record duplicati di una tabella, anche quando la tabella non ha un campo indice unico, si può lanciare questa query:

CREATE TABLE nuova_tabella AS
SELECT * FROM vecchia_tabella WHERE 1 GROUP BY [COLUMN TO remove duplicates BY];
DROP TABLE vecchia_tabella;
RENAME TABLE nuova_tabella TO vecchia_tabella;

via: Codesnippets


6 Commenti

  1. news scrive:

    ottimo, non ho altre parole, grazie

  2. Riccardo scrive:

    Direi che è ciò che occorre.

  3. Davide scrive:

    Ciao,
    vorrei usare questo codice mysql per eliminare duplicati da un DB di wordpress.
    Oltre a cambiare i relativi campi nuova_tabella e vecchia_tabello con i giusti nomi delle tabelle, c'è qualche altra cosa da cambiare, posso fare copia incolla?
    Grazie.

  4. Matteo scrive:

    è giusto quello che mi serviva.
    Grazie.

Lascia un Commento