PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Supprimer les lignes en double (ne supprimez pas tous les doublons)

Essayez les étapes décrites dans cet article :Supprimer les doublons d'une base de données PostgreSQL.

Il décrit une situation dans laquelle vous devez gérer une énorme quantité de données qu'il n'est pas possible de group by .

Une solution simple serait celle-ci :

DELETE FROM foo
       WHERE id NOT IN (SELECT min(id) --or max(id)
                        FROM foo
                        GROUP BY hash)

hash est quelque chose qui se duplique.