emkiset.ru

Hoe dubbele records in Oracle te verwijderen

Wanneer u met Oracle werkt, kunnen dubbele records vaak worden weergegeven. U kunt deze dubbele rijen elimineren door ze te identificeren en hun eigen RowID (rij-ID) of het rijadres te gebruiken. Voordat u begint, moet u een back-up van de tabel maken voor het geval u deze moet bekijken nadat u de records hebt verwijderd.

stappen

Methode 1
Identificeer dubbele records

Titel afbeelding Delete Duplicate Records in Oracle Step 1
1
Identificeer dubbele records In dit geval zal de zaak worden geïdentificeerd "Alan" dat verschijnt twee keer in de tabel. Zorg ervoor dat de records die u probeert te verwijderen, daadwerkelijk worden gedupliceerd met behulp van de volgende SQL-instructie.
  • Titel afbeelding Delete Duplicate Records in Oracle Step 2
    2
    Identificeer ze via de kolom genaamd "namen". Bijvoorbeeld als u een kolom had genaamd "namen", je moet vervangen "column_name" door "namen".
  • 3
    Identificeer ze via andere kolommen. Als je de duplicaten probeert te identificeren via een andere kolom, bijvoorbeeld als je kijkt naar de leeftijd van Alan in plaats van naar zijn naam, voer je "leeftijden" in plaats van "column_name" en zo verder.
  • SELECT column_name, COUNT (kolomnaam) FROM TABLE GROUP BY kolomnaam HAVING COUNT (kolomnaam) > 1-
    Titel afbeelding Delete Duplicate Records in Oracle Step 3

    Methode 2
    Verwijder een enkele dubbele waarde

    Titel afbeelding Delete Duplicate Records in Oracle Step 4
    1
    Gebruik de zin SELECTEER de naam VAN de namen. na SQL, wat bedoel je? "Standaard querytaal" (gestandaardiseerde taal van raadplegingen), schrijven SELECTEER de naam VAN de namen.
  • Titel afbeelding Delete Duplicate Records in Oracle Step 5


    2
    Verwijder alle rijen die de dubbele naam bevatten. na SQL, schrijf de zin VERWIJDEREN van namen WHERE name = `Alan`. Merk op dat u alle kolommen met de naam wilt verwijderen "Alan" het is belangrijk om de eerste letter in hoofdletters te schrijven. na SQL, schrijven COMMIT.
  • Titel afbeelding Delete Duplicate Records in Oracle Step 6
    3
    Voer de rij opnieuw in, nu zonder het duplicaat. Nu hebt u alle rijen met de voorbeeldnaam verwijderd "Alan", je moet opnieuw een nieuwe invoegen via de zin INVOEGEN Namen VALUES (`Alan`) -. na SQL, schrijven COMMIT om de nieuwe kolom te maken.
  • 4
    Kijk naar de nieuwe lijst. Nadat u de bovenstaande stappen heeft voltooid, kunt u de tabel bekijken om ervoor te zorgen dat er geen dubbele records zijn in de zin SELECTEER * VAN namen.
  • SQL > SELECTEER naam VAN namen-NAAM ------------------------------ AlanCarrieTom Gesplitste plannen.SQL > verwijderen uit namen waarbij naam = `Alan`-rijen zijn verwijderd.SQL > commit-Commit voltooid.SQL > invoegen in naamwaarden (`Alan`) - rij gemaakt.SQL > commit-Commit voltooid.SQL > selecteer * from names-NAME ------------------------------ AlanCarrieTomrows selected.



    Titel afbeelding Delete Duplicate Records in Oracle Step 7

    Methode 3
    Verwijder meerdere records

    Titel afbeelding Delete Duplicate Records in Oracle Step 8
    1
    Selecteer de RowID die u wilt verwijderen. na SQL, schrijven SELECT ROWID, naam VAN namen-.
  • Titel afbeelding Delete Duplicate Records in Oracle Step 9
    2
    Verwijder dubbele records. na SQL, schrijven VERWIJDEREN van namen naar WHERE ROWID > (SELECT MIN (ROWID) FROM namen b WHERE b.name = a.name) - om dubbele records te verwijderen.
  • Titel afbeelding Delete Duplicate Records in Oracle Step 10
    3
    Controleer of er duplicaten zijn. Controleer na het voltooien van de bovenstaande stappen of er nog steeds dubbele records zijn door te typen SELECT ROWID, naam VAN namen- en dan COMMIT.
    SQL > SELECT ROWID, name FROM names-ROWID NAME ------------------ ----------------------- ------- AABJnsAAGAAAdfOAAA AlanAABJnsAAGAAAdfOAAB AlanAABJnsAAGAAAdfOAAC CarrieAABJnsAAGAAAdfOAAD TomAABJnsAAGAAAdfOAAF Alanrows selected.SQL > verwijderen van namen zijn rowid > (selecteer min (rowid) van namen bwhere b.name = a.name) -rows deleted.SQL > selecteer rowid, naam uit namen-ROWID NAME ------------------ ----------------------- ------- AABJnsAAGAAAdfOAAA AlanAABJnsAAGAAAdfOAAC CarrieAABJnsAAGAAAdfOAAD Tomrows selected.SQL > commit-Commit voltooid.}}
  • Methode 4
    Verwijder rijen door de kolommen

    Titel afbeelding Delete Duplicate Records in Oracle Step 11
    1
    Selecteer de rijen na SQL, schrijven SELECTEER * VAN namen- om de rijen te zien.
  • Titel afbeelding Delete Duplicate Records in Oracle Step 12
    2
    Verwijder dubbele rijen door ze via hun kolommen te identificeren. na SQL, schrijven VERWIJDEREN van namen naar WHERE ROWID > (SELECT MIN (ROWID) FROM namen b WHERE b.name = a.name AND b.edad = a.edad) - om dubbele records te verwijderen.
  • 3
    Controleer of er duplicaten zijn. Controleer na het voltooien van de bovenstaande stappen of er nog steeds dubbele records zijn door te typen SELECT ROWID, naam VAN namen- en dan COMMIT om te controleren of dubbele records met succes zijn verwijderd.
  • SQL > SELECT * FROM NAMES-NAME AGE ------------------------------ ------ Alan 50Carrie 51Tom 52Alan 50ROWS geselecteerd.SQL > WISSEN VAN NAMEN WAAROM ROWID > (SELECT MIN (ROWID) VAN namen bWHERE b.name = a.nameAND b.age = a.age) -ROW deleted.SQL > SELECT * FROM NAMES-NAME AGE ------------------------------ ------ Alan 50Carrie 51Tom 52ROWS selected.SQL > COMMIT COMMIT voltooid.

    waarschuwingen

    • Maak een back-up van je board in uw sessie en gebruik deze om te zien wat de gegevens uit de oorspronkelijke tabel waren vóór het verwijderen van duplicaten (als u twijfelt).
    SQL > CREATEER TABEL alan.names_backup AS SELECT * FROM names-TABLE created.
    Delen op sociale netwerken:

    Verwant
    Hoe u Microsoft Excel-kolommen alfabetisch kunt aanpassenHoe u Microsoft Excel-kolommen alfabetisch kunt aanpassen
    Hoe kolommen in InDesign aan te passenHoe kolommen in InDesign aan te passen
    Gegevensvergelijkingen zoeken in ExcelGegevensvergelijkingen zoeken in Excel
    Hoe een eenvoudige tabel in Microsoft Word te makenHoe een eenvoudige tabel in Microsoft Word te maken
    Hoe Excel te verdelenHoe Excel te verdelen
    Hoe webadressen in Mozilla Firefox te verwijderenHoe webadressen in Mozilla Firefox te verwijderen
    Hoe duplicaten te verwijderen in iTunesHoe duplicaten te verwijderen in iTunes
    Hoe duplicaten te verwijderen in ExcelHoe duplicaten te verwijderen in Excel
    Hoe herhaalde records in Excel 2007 te verwijderenHoe herhaalde records in Excel 2007 te verwijderen
    Hoe duplicaten gemakkelijk te vinden in Microsoft AccessHoe duplicaten gemakkelijk te vinden in Microsoft Access
    » » Hoe dubbele records in Oracle te verwijderen
    © 2021 emkiset.ru