„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie lösche ich doppelte Zeilen und behalte gleichzeitig die älteste Einreichung bei?

Wie lösche ich doppelte Zeilen und behalte gleichzeitig die älteste Einreichung bei?

Veröffentlicht am 08.11.2024
Durchsuche:479

 How to Delete Duplicate Rows While Keeping the Oldest Submission?

Doppelte Zeilen verwalten: Älteste Übermittlungen beibehalten

Doppelte Daten können die Integrität und Benutzerfreundlichkeit jeder Datenbank erheblich beeinträchtigen. In diesem Szenario besteht unser Ziel darin, doppelte Zeilen basierend auf dem Feld „subscriberEmail“ zu eliminieren und nur die ursprüngliche Übermittlung beizubehalten.

Um dies zu erreichen, ohne auf Techniken zum Tabellenaustausch zurückgreifen zu müssen, können wir die folgende SQL-Abfrage verwenden:

delete x 
from myTable x
join myTable z on x.subscriberEmail = z.subscriberEmail
where x.id > z.id

Diese Abfrage nutzt die Leistungsfähigkeit des Tabellenaliasings. Durch das Erstellen der Aliase x und z für die Tabelle myTable können wir Zeilen innerhalb derselben Tabelle vergleichen. Konkret verbinden wir x und z im Feld subscriberEmail und erstellen so effektiv einen Selbst-Join.

Die where-Klausel führt die entscheidende Filterung durch. Es eliminiert Datensätze in x, bei denen das ID-Feld größer ist als das entsprechende ID-Feld in z. Dadurch wird sichergestellt, dass nur nicht originale (doppelte) Übermittlungen gelöscht werden.

Um die Leistung weiter zu verbessern, sollten Sie die Implementierung eines UNIQUE-Index für die Spalte subscriberEmail in Betracht ziehen. Dadurch wird automatisch verhindert, dass in Zukunft doppelte Einträge in Ihre Tabelle eingefügt werden.

Durch die Implementierung dieser Abfrage können Sie doppelte Zeilen effizient entfernen und so die älteste Übermittlung für jede E-Mail-Adresse beibehalten, ohne dass komplexe Tabellenmanipulationen oder erforderlich sind Verfahren zum Mischen von Daten.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3