Gewusst wie: Löschen von Duplikaten mit Oracle SQL

March 11

Die Chancen stehen hoch, dass wenn Sie diesen Artikel lesen, Sie mit einer Oracle-Datenbank und Duplikate in eine oder mehrere Ihrer Tabellen bereits entdeckt. Entfernung von Duplikaten durch Ihre SQL-Code kann leicht durchgeführt werden, um sich nicht zu sorgen, ist. Jedoch, wie viele gute Programmierer wissen, nur weil Sie löschen können etwas bedeutet nicht, dass Sie sollten.

Anweisungen

1Gewusst wie: Löschen von Duplikaten mit Oracle SQL

Öffnen Sie Ihren SQL-Editor, und verwenden Sie eine Norm "Select" SQL-Anweisung hochzuziehen Datensätze aus der Tabelle wo denken Sie, dass die Duplikate vorhanden sind. Codebeispiel:SQL > Select Spalte1, Spalte2 aus Yourtablename;In Abbildung 1 wurden die Spalten "Firstname" und "Usrid" ausgewählt aus einer Tabelle mit dem Namen "Contacts_ersch." Denken Sie daran, diese Tabelle hat zusätzliche Spalten von Informationen, die nicht gezeigt werden, wie z. B. e-Mail-Adressen und Nachnamen. Berücksichtigen Sie wie viele Datenpunkte in der Zeile wie möglich sicherzustellen, dass die doppelte Zeile, die, der Sie beschäftigen, wirklich ein Duplikat ist.

2Gewusst wie: Löschen von Duplikaten mit Oracle SQL

Überprüfen Sie das Duplikat, mithilfe der SQL-Funktion "Zählen". Es gibt Scharen von Möglichkeiten zum Suchen und überprüfen die Duplikate. In Abbildung 1 sind zwei Reihen mit dem Namen "David" und zwei weitere mit dem Namen "Natalie." Da es sich um hypothetische Beispiel, sind David und Natalie doppelte Einträge. Überprüfen nur einen Datenpunkt, wie ein Vorname ist in der Regel nie genug ja, gründlich sein, der gesamte Kontaktdatensatz für jede dieser Personen sind Duplikate. Der einzige Unterschied zwischen den Datensätzen ist die Anzahl der "Usrid".Eine Möglichkeit, eine Überprüfung mit SQL durchzuführen, bevor Sie einen doppelten Datensatz löschen ist die SQL-Funktion "Zählen" verwenden, um die Anzahl der Zeiten, die der Wert vorhanden ist in einer Spalte zu finden. Abbildung 2 verwendet eine Variante des Codes für die Suche nach Duplikaten mit SQL.Einige code z.B.: SQL > Select Spalte1,

Count (column1) As NumOccurrences From yourtablename Group By column1 Having (Count (column1) > 1);3Gewusst wie: Löschen von Duplikaten mit Oracle SQL

Löschen Sie die doppelte Zeile mit einer SQL-Anweisung "Löschen". Der Code kann etwa so aussehen:SQL > Löschen von YourtablenameWo Spalte2 = Wert-Sie aus column2 wählenAbbildung 3 zeigt die Verwendung der Spalte "Usrid" und den entsprechenden Wert von sechs löschen Sie den doppelten Eintrag für "Natalie." Im Idealfall gibt es ein eindeutiger Bezeichner, der einen doppelten Datensatz gehört. Ein eindeutiger Bezeichner in einer Zeile, z. B. eine Indexnummer oder Datensatznummer besser bereiten und ermöglichen es Ihnen, unter anderem die Duplikate zu entschlüsseln, die Sie löschen möchten.

4Gewusst wie: Löschen von Duplikaten mit Oracle SQL

Überprüfen Sie Ihre Löschung durch Schritt 1 wiederholen. Abbildung 4 zeigt, dass mit der Verwendung der SQL-Anweisung "Löschen" beide Duplikate für David und Natalie gelöscht wurden. Anschließend gibt es eine offensichtliche Kluft in den Zahlen der Spalte "Usrid" gezeigt.