itholoinfo.com.com

Cum să ștergeți înregistrările duplicate în Oracle

Când lucrați cu Oracle, este posibil să întâlniți unele înregistrări duplicate. Puteți exclude rândurile duplicate identificându-le și utilizând propriul RowID (identificator de linie) sau adresa acestuia. Înainte de a începe, este recomandat să creați o copie de siguranță a tabelului în cazul în care aveți nevoie de o referință după ștergerea înregistrărilor.

pași

Metoda 1
Identificarea înregistrărilor duplicate

Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 1
1
Identificați înregistrările duplicate. În acest exemplu, vom folosi numele "Alan". Confirmați că înregistrările pe care doriți să le ștergeți sunt de fapt duplicate utilizând următorul șir SQL.
  • Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 2
    2
    Identificați înregistrările folosind coloana "Nume". De exemplu, dacă aveți o coloană numită "Nume", înlocuiți "column_name" cu "Nume".
  • 3
    Identificați-le prin intermediul altor coloane. Dacă aveți de gând să încerce să identifice înregistrarea duplicat printr-o coloană diferită, cum ar fi vârsta lui Alan, în locul numelui, introduceți „Ere“ în loc de „COL_NAME“, și așa mai departe.
  • Column_name SELECT COUNT (column_name) DIN PRIN TABLEGROUP nome_colunaHAVING COUNT (column_name)> 1-
    Imagine intitulată Ștergeți înregistrările duplicat în Oracle Pasul 3

    Metoda 2
    Ștergerea unei singure înregistrări duplicate

    Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 4
    1
    Utilizează comanda "select nume de la nume". După "SQL", ceea ce înseamnă "Language Standard Query", introduceți "selectați numele din nume".
  • Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 5
    2
    Ștergeți toate rândurile cu numele duplicat. După "SQL", tastați "ștergeți din nume unde name = `Alan`;". Rețineți că este important să scrieți numele "Alan" cu prima majusculă, astfel încât să fie șters. După "SQL", tastați "comite".
  • Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 6
    3
    Reintroduceți linia, de data aceasta fără înregistrarea dublă. Acum, că ați șters toate rândurile cu exemplul numele, „Alan“, puteți introduce un alt nume prin tastarea „inserați în valori de nume («Alan») -.“ După "SQL", tastați "commit" pentru a crea o linie nouă.
  • 4
    Vizualizați noua listă. După ce ați finalizat pașii de mai sus, verificați că nu mai există înregistrări duplicate tastând "select * from names".
  • SQL> numele SELECT FROM nume-NAME ------------------------------ AlanCarrieTomAlanROWS selected.SQL> DELETE FROM WHERE nume = nume Alan`-ROWS deleted.SQL> COMMIT COMMIT-complete.SQL> INSERT INTO nume valori (Alan `) - ROW created.SQL> COMMIT COMMIT-complete.SQL> SELECT * FROM nume-------- Nume ----------------------- AlanCarrieTomROWS selectat.
    Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 7


    Metoda 3
    Ștergerea mai multor înregistrări duplicate

    Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 8
    1
    Selectați RowID pe care doriți să îl ștergeți. După "SQL", tastați "selectați rowid, name from names;".
  • Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 9
    2
    Ștergeți înregistrarea duplicată. După "SQL", de tip "șterge din numele în cazul în care ROWID> (selectați min (ROWID), de la nume în cazul în care b = b.nome a.nome) ;" pentru a șterge înregistrările duplicat.
  • 3
    Verificați înregistrările duplicate. După efectuarea pașilor de mai sus, verificați dacă înregistrările duplicate există în continuare tastând "selectați rowid, name from names;" și apoi "commit".
  • SQL> SELECT ROWID, numele de la nume ROWID-NAME ------------------ --------------------- --------- AABJnsAAGAAAdfOAAA AlanAABJnsAAGAAAdfOAAB AlanAABJnsAAGAAAdfOAAC CarrieAABJnsAAGAAAdfOAAD TomAABJnsAAGAAAdfOAAF AlanROWS selected.SQL> DELETE FROM nume aWHERE ROWID> (SELECT MIN (ROWID) DIN nume bWHERE b.nome = a.nome) -ROWS deleted.SQL> SELECT ROWID , numele de la nume ROWID------------------- ------------------------- nume ----- AABJnsAAGAAAdfOAAA AlanAABJnsAAGAAAdfOAAC CarrieAABJnsAAGAAAdfOAAD TomROWS selected.SQL> COMMIT-COMMIT completă.}}
    Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 10

    Metoda 4
    Ștergerea rândurilor cu coloane

    Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 11
    1
    Selectați rândurile. După "SQL", tastați "select * from names;" pentru a verifica rândurile.
  • Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 12
    2
    Ștergeți rândurile duplicate identificând coloanele lor. După "SQL", "tip" șterge din numele în cazul în care ROWID> (selectați min (ROWID), de la nume în cazul în care b = b.nome a.nome și b.idade = a.idade) - „pentru a șterge înregistrările duplicat.
  • 3
    Verificați înregistrările duplicate. După parcurgerea etapelor de mai sus, de tip „selectați * de la nomes-“ și apoi „angajează“ pentru a verifica dacă excluderea înregistrărilor dublură a avut succes.
  • SQL> SELECT * FROM NAME NAME-AGE NAME --------------------------------------- Alan 50Carrie 51Tom 52Alan 50ROWS selected.SQL> DELETE FROM nume aWHERE ROWID> (SELECT MIN (ROWID) DIN nume bWHERE b.nome = a.nomeAND b.idade = a.idade) -Row deleted.SQL> SELECT * FROM nume-name AGE ------------------------------ ---------- Alan 50Carrie 51Tom 52ROWS selected.SQL> COMMIT -COMMIT complet.
    Imagine intitulată Ștergeți înregistrările duplicate din Oracle Pasul 13

    avertismente

    • Creați un tabel în sesiune copie de rezervă și să-l utilizați pentru a vedea ce au fost datele din tabelul original, înainte de a șterge duplicat înregistrări (dacă există vreun dubiu).
      SQL> CREATE TABLE alan.nomes_backup AS SELECT * FROM TABLE-nume create.
    Distribuiți pe rețelele sociale:

    înrudit
    Cum se creează o bază de date în Microsoft AccessCum se creează o bază de date în Microsoft Access
    Cum se șterge înregistrările duplicate în Excel 2007Cum se șterge înregistrările duplicate în Excel 2007
    Cum de a găsi înregistrări duplicat în ExcelCum de a găsi înregistrări duplicat în Excel
    Cum să ștergeți fotografiile Google duplicateCum să ștergeți fotografiile Google duplicate
    Cum să gestionați înregistrările utilizând Microsoft AccessCum să gestionați înregistrările utilizând Microsoft Access
    Cum să obțineți un istoric al apelurilor telefonului mobilCum să obțineți un istoric al apelurilor telefonului mobil
    Cum se elimină duplicatele în Open Office CalcCum se elimină duplicatele în Open Office Calc
    Cum să eliminați duplicate în ExcelCum să eliminați duplicate în Excel
    Cum de a repara contactele duplicat în YahooCum de a repara contactele duplicat în Yahoo
    Cum se elimină Goplayer malwareCum se elimină Goplayer malware
    » » Cum să ștergeți înregistrările duplicate în Oracle
    © 2021 itholoinfo.com.com