Maison >base de données >tutoriel mysql >Comment puis-je supprimer efficacement les lignes en double d'une table Oracle ?
Intégrité des données dans Oracle : élimination des lignes en double
Les entrées en double dans les tables Oracle peuvent compromettre l'intégrité des données, en particulier lors de l'établissement de clés primaires. Cet article présente une solution pour supprimer efficacement ces doublons.
Exploiter la rowid
Pseudocolonne
La pseudocolonne rowid
d'Oracle propose un identifiant unique pour chaque ligne. Cela permet une stratégie de suppression précise :
<code class="language-sql">DELETE FROM your_table WHERE rowid NOT IN (SELECT MIN(rowid) FROM your_table GROUP BY column1, column2, column3);</code>
Voici une répartition :
your_table
: Le tableau contenant les lignes en double.column1, column2, column3
: Les colonnes définissant l'unicité. Ajoutez plus de colonnes à la clause GROUP BY
si nécessaire.rowid
pour chaque combinaison unique de colonnes.NOT IN
supprime toutes les lignes dont rowid
n'est pas le minimum, ne laissant qu'une seule instance de chaque enregistrement unique.Cette approche nettoie efficacement votre table des entrées en double, garantissant ainsi l'intégrité des données pour les opérations ultérieures.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!