Mysql
 sql >> Database >  >> RDS >> Mysql

Come rimuovo le righe duplicate nel mio database MySQL? (Mantieni quello con l'ID primario più basso)

Qualcosa del genere dovrebbe funzionare:

DELETE FROM `table` 
WHERE `id` NOT IN (
    SELECT MIN(`id`) 
    FROM `table`
    GROUP BY `download_link`)

Per sicurezza, prima di eseguire la query di eliminazione effettiva, potresti voler fare una selezione equivalente per vedere cosa viene eliminato:

SELECT * FROM `table` 
WHERE `id` NOT IN (
    SELECT MIN(`id`) 
    FROM `table`
    GROUP BY `download_link`)