Maison > base de données > tutoriel mysql > Comment supprimer les lignes en double dans NetezzaSQL sans identifiant unique ?

Comment supprimer les lignes en double dans NetezzaSQL sans identifiant unique ?

Patricia Arquette
Libérer: 2025-01-12 11:31:43
original
926 Les gens l'ont consulté

How to Delete Duplicate Rows in NetezzaSQL Without a Unique Identifier?

Suppression des lignes en double dans Netezza SQL : un guide pratique

Netezza SQL ne prend pas directement en charge l'approche de clause WITH standard pour supprimer les lignes en double. Cependant, une alternative robuste utilise le mot-clé USING. Cette méthode élimine efficacement les doublons sans s'appuyer sur un identifiant unique.

La requête suivante montre comment supprimer les entrées en double d'une table nommée « table_with_dups » :

<code class="language-sql">DELETE FROM table_with_dups T1
USING table_with_dups T2
WHERE T1.ctid < T2.ctid AND T1.column1 = T2.column1 AND T1.column2 = T2.column2; --Add all relevant columns here</code>
Copier après la connexion

Remarque importante : Remplacez column1, column2, etc. par les noms de colonnes réels de votre tableau qui définissent une ligne en double. Vous devez inclure toutes les colonnes qui contribuent à la définition d'un doublon.

Cette requête compare les lignes en fonction de leur ctid (identifiant de ligne unique généré par le système) et des colonnes spécifiées. Il supprime la ligne avec le plus petit ctid pour chaque ensemble en double.

Vérification avant suppression :

Avant d'exécuter l'instruction DELETE, il est crucial de vérifier les lignes dont la suppression est prévue. Exécutez cette requête pour prévisualiser les enregistrements concernés :

<code class="language-sql">SELECT * FROM table_with_dups T1
USING table_with_dups T2
WHERE T1.ctid < T2.ctid AND T1.column1 = T2.column1 AND T1.column2 = T2.column2; --Add all relevant columns here</code>
Copier après la connexion

Cette instruction SELECT reflète la requête DELETE, vous permettant d'inspecter les données avant d'apporter des modifications permanentes. Cette mesure de précaution est fortement recommandée pour éviter toute perte de données involontaire.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal