dmylogi.com

Hoe om dubbele rekords in Oracle te verwyder

Wanneer u met Oracle werk, kan duplikaat rekords dikwels voorkom. U kan hierdie dubbele rye uitskakel deur hulle te identifiseer en hul eie RowID (ry-identifiseerder) of die ryadres te gebruik. Voordat u begin, moet u `n rugsteun van die tabel skep indien u dit moet hersien nadat u die rekords uitgevee het.

stappe

Metode 1
Identifiseer duplikaat rekords

Prent getiteld Duplikaat rekords verwyder in Oracle Stap 1
1
Identifiseer duplikaat rekords In hierdie geval sal die saak geïdentifiseer word "Alan" wat twee keer in die tabel verskyn. Maak seker dat die rekords wat jy probeer uitvee, eintlik gedupliseer word deur die volgende SQL-stelling te gebruik.
  • Prent getiteld Duplikaat rekords verwyder in Oracle Stap 2
    2
    Identifiseer hulle deur die kolom genoem "name". Byvoorbeeld, as jy `n kolom genoem het "name", moet jy vervang "column_name" deur "name".
  • 3
    Identifiseer hulle deur ander kolomme. As jy probeer om die duplikate deur `n ander kolom te identifiseer, byvoorbeeld, kyk na Alan se ouderdom in plaas van sy naam, voer in "ouderdomme" in plaas van "column_name" en so aan.
  • SELECT kolomnaam, COUNT (kolomnaam) VAN TABEL GROEP BY kolomnaam MET COUNT (kolomnaam) > 1-
    Prent getiteld Duplikaat rekords verwyder in Oracle Stap 3

    Metode 2
    Skrap `n enkele duplikaatwaarde

    Prent getiteld Duplikaat rekords verwyder in Oracle Stap 4
    1
    Gebruik die sin SELEK naam van name. na SQL, wat bedoel jy "Standaard navraag taal" (gestandaardiseerde taal van konsultasies), skryf SELEK naam van name.
  • Prent getiteld Duplikaat rekords verwyder in Oracle Stap 5
    2
    Verwyder alle rye wat die duplikaat naam bevat. na SQL, skryf die sin neer Vee uit name WAAR naam = `Alan`. Let daarop dat u alle kolomme met die naam uitskakel "Alan" Dit is belangrik om die eerste letter in hoofletters te skryf. na SQL, skryf pleeg.
  • Prent getiteld Duplikaat rekords verwyder in Oracle Stap 6
    3
    Voer die ry weer in, nou sonder die duplikaat. Noudat jy al die rye wat die voorbeeldnaam het, uitgevee het "Alan", moet jy weer `n ander een deur die sin voeg INSERT in name WAARDES (`Alan`) -. na SQL, skryf pleeg om die nuwe kolom te skep.
  • 4
    Kyk na die nuwe lys. Sodra u bogenoemde stappe voltooi het, kan u die tabel hersien om seker te maak dat daar geen duplikaatrekords deur die sin is nie KIES * VAN NAME.
  • SQL > SELECT naam VAN NAME-NAME ------------------------------ AlanCarrieTomAlanrows selected.SQL > verwyder uit name waar naam = `Alan`-rye deleted.SQL > commit-Commit complete.SQL > voeg in name waardes in (`Alan`) - ry geskep. SQL > commit-Commit complete.SQL > kies * van name-NAME ------------------------------ AlanCarrieTomrows gekies.


    Prent getiteld Duplikaat rekords verwyder in Oracle Stap 7

    Metode 3
    Vee verskeie rekords uit

    Prent getiteld Duplikaat rekords verwyder in Oracle Stap 8
    1
    Kies die RowID wat jy wil verwyder. na SQL, skryf SELECT ROWID, naam FROM name-.
  • Prent getiteld Duplikaat rekords verwyder in Oracle Stap 9
    2
    Verwyder duplikaat rekords. na SQL, skryf Vee van name af na WHERE ROWID > (SELECT MIN (ROWID) VAN NAME b WAAR b.name = a.naam) - duplikaat rekords uit te skakel.
  • Prent getiteld Duplikaat rekords verwyder in Oracle Stap 10
    3
    Kyk of daar duplikate is. Nadat u die bogenoemde stappe voltooi het, kyk of daar nog dubbele rekords is deur te tik SELECT ROWID, naam FROM name- en dan pleeg.
    SQL > SELECT ROWID, naam VAN name-ROWID NAME ------------------ ----------------------- ------- AABJnsAAGAAAdfOAAA AlanAABJnsAAGAAAdfOAAB AlanAABJnsAAGAAAdfOAAC CarrieAABJnsAAGAAAdfOAAD TomAABJnsAAGAAAdfOAAF Alanrows selected.SQL > Skrap uit name wakker ry > (kies min (rowid) van name bwhere b.name = a.name) -weergawes verwyder.SQL > kies rowwe, naam van name-ROWID NAME ------------------ ----------------------- ------- AABJnsAAGAAAdfOAAA AlanAABJnsAAGAAAdfOAAC CarrieAABJnsAAGAAAdfOAAD Tomrows selected.SQL > commit-commit voltooi.}}
  • Metode 4
    Verwyder rye deur die kolomme

    Prent getiteld Duplikaat rekords verwyder in Oracle Stap 11
    1
    Kies die rye na SQL, skryf KIES * VAN NAME- om die rye te sien.
  • Prent getiteld Duplikaat rekords verwyder in Oracle Stap 12
    2
    Verwyder dubbele rye deur hulle deur hul kolomme te identifiseer. na SQL, skryf Vee van name af na WHERE ROWID > (SELECT MIN (ROWID) VAN NAME b WAAR b.name = a.naam EN b.edad = a.edad) - duplikaat rekords uit te skakel.
  • 3
    Kyk of daar duplikate is. Nadat u die bogenoemde stappe voltooi het, kyk of daar nog dubbele rekords is deur te tik SELECT ROWID, naam FROM name- en dan pleeg om te verifieer dat duplikaat rekords suksesvol verwyder is.
  • SQL > SELECT * VAN NAAM-NAAM OUDERDOM ------------------------------ ---------- Alan 50Carrie 51Tom 52Alan 50ROWS selected.SQL > SLEUTEL VAN NAME AWHERE ROWID > (SELECT MIN (ROWID) VAN NAME bWHERE b.name = a.nameAND.b.age = a.age) -ROW verwyder.SQL > SELECT * VAN NAAM-NAAM OUDERDOM ------------------------------ ---------- Alan 50Carrie 51Tom 52ROWS selected.SQL > COMMIT-COMMIT voltooi.

    waarskuwings

    • Skep `n rugsteun van u tafel in u sessie en gebruik dit om te sien wat die oorspronklike tabel data was voordat u die duplikate verwyder het (indien u enige vrae het).
    SQL > SKEP TAFEL alan.names_backup AS SELECT * FROM name-TABLE geskep.
    Deel op sosiale netwerke:

    Verwante
    Hoe herhaalde rekords in Excel 2007 verwyder wordHoe herhaalde rekords in Excel 2007 verwyder word
    Hoe om `n kop in Excel te voegHoe om `n kop in Excel te voeg
    Hoe om Microsoft Excel-kolomme alfabeties te akkommodeerHoe om Microsoft Excel-kolomme alfabeties te akkommodeer
    Hoe om `n kolom in `n spiltafel by te voegHoe om `n kolom in `n spiltafel by te voeg
    Hoe om data-ooreenkomste in Excel te vindHoe om data-ooreenkomste in Excel te vind
    Hoe om `n histogram in Excel te skepHoe om `n histogram in Excel te skep
    Hoe om `n eenvoudige tabel in Microsoft Word te skepHoe om `n eenvoudige tabel in Microsoft Word te skep
    Hoe om Excel te verdeelHoe om Excel te verdeel
    Hoe om duplikate in iTunes te verwyderHoe om duplikate in iTunes te verwyder
    Hoe om duplikate in Excel te verwyderHoe om duplikate in Excel te verwyder
    » » Hoe om dubbele rekords in Oracle te verwyder
    © 2024 dmylogi.com