4 načini za brisanje podvojenih zapisov v storitvi Oracle

Kazalo:

4 načini za brisanje podvojenih zapisov v storitvi Oracle
4 načini za brisanje podvojenih zapisov v storitvi Oracle

Video: 4 načini za brisanje podvojenih zapisov v storitvi Oracle

Video: 4 načini za brisanje podvojenih zapisov v storitvi Oracle
Video: Москва слезам не верит, 1 серия (FullHD, драма, реж. Владимир Меньшов, 1979 г.) 2024, Maj
Anonim

Med delom v podjetju Oracle lahko v nekaterih zapisih najdete dvojnike. Podvojene vrstice lahko odstranite tako, da jih identificirate in uporabite ustrezen naslov vrstice vzdevka RowID. Preden začnete, ustvarite varnostno tabelo, če potrebujete referenco po izbrisu zapisa.

Korak

Metoda 1 od 4: Prepoznavanje dvojnikov

Brisanje podvojenih zapisov v Oracle 1. koraku
Brisanje podvojenih zapisov v Oracle 1. koraku

Korak 1. Prepoznajte dvojnike

V tem primeru identificiramo podvojeni "Alan". Zagotovite, da so zapisi, ki jih želite izbrisati, res dvojniki, tako da spodaj vnesete SQL.

Izbrišite podvojene zapise v Oracle 2. koraku
Izbrišite podvojene zapise v Oracle 2. koraku

Korak 2. Prepoznajte iz stolpca z naslovom "Ime"

Če ima stolpec naslov "Ime", morate "ime_ stolpca" zamenjati z Ime.

Brisanje podvojenih zapisov v Oracle 3. koraku
Brisanje podvojenih zapisov v Oracle 3. koraku

Korak 3. Opredelite druge stolpce

Če poskušate identificirati podvojene podatke iz različnih stolpcev, na primer Alanovo starost namesto njegovega imena, namesto »ime_ stolpca« vnesite »Starost« itd.

izberite ime stolpca, štetje (ime stolpca) iz skupine tabel po imenu stolpca z štetjem (ime_ stolpca)> 1;

Metoda 2 od 4: Odstranjevanje posameznih dvojnikov

Brisanje podvojenih zapisov v Oracle 4. koraku
Brisanje podvojenih zapisov v Oracle 4. koraku

Korak 1. Izberite "ime iz imen"

Po "SQL" (okrajšava za Standard Query Language) vnesite "select name from names".

Brisanje podvojenih zapisov v Oracle 5. koraku
Brisanje podvojenih zapisov v Oracle 5. koraku

Korak 2. Izbrišite vse vrstice z podvojenimi imeni

Po "SQL" vnesite "delete from names where name = 'Alan';." Treba je opozoriti, da je tukaj velika začetnica pomembna, tako da lahko ta korak izbriše vse vrstice z imenom "Alan". Po "SQL" vnesite "commit"

Brisanje podvojenih zapisov v Oracle Korak 6
Brisanje podvojenih zapisov v Oracle Korak 6

Korak 3. Znova vnesite vrstice brez dvojnikov

Zdaj, ko ste izbrisali vse vrstice in jih nadomestili z "Alan", jih znova vnesite tako, da vnesete "vstavi v vrednosti imen ('Alan');." Po "SQL" vnesite "commit", da ustvarite novo vrstico.

Brisanje podvojenih zapisov v Oracle 7. koraku
Brisanje podvojenih zapisov v Oracle 7. koraku

Korak 4. Oglejte si nov seznam

Ko dokončate zgornje korake, lahko preverite, ali ni več podvojenih zapisov, tako da vnesete »izberite * iz imen«.

SQL> izberite ime iz imen; IME ------------------------------ Alan Citra Tomi Alan Baris izbran. SQL> izbriši iz imen, kjer je name = 'Alan'; Vrstica je izbrisana. SQL> ureja; / Oddaja dokončana. SQL> vstavi vrednosti imen ('Alan'); vrstica ustvarjena. SQL> ureja; Zaveza je končana. SQL> izberite * iz imen; IME ------------------------------ Izbrane vrstice Alana Citre Tomi.

Metoda 3 od 4: Odstranjevanje več dvojnikov

Brisanje podvojenih zapisov v Oracle 8. koraku
Brisanje podvojenih zapisov v Oracle 8. koraku

Korak 1. Izberite RoWID, ki ga želite izbrisati

Po "SQL" vnesite "select rowid, name from names;."

Brisanje podvojenih zapisov v Oracle 9. koraku
Brisanje podvojenih zapisov v Oracle 9. koraku

Korak 2. Odstranite dvojnike

Po "SQL" vnesite "delete from names a where rowid> (izberite min (rowid) iz imen b, kjer je b.name = a.name);" za odstranitev dvojnikov.

Brisanje podvojenih zapisov v Oracle 10. koraku
Brisanje podvojenih zapisov v Oracle 10. koraku

Korak 3. Preverite dvojnike

Ko dokončate zgornje korake, preverite dvojnike tako, da vnesete "select rowid, name from names;" potem "zaveži".

SQL> izberite rowid, ime iz imen; ROWID NAME ------------------ ------------------------------ AABJnsAAGAAAdfOAAA Alan AABJnsAAGAAAdfOAAB Alan AABJnsAAGAAAdfOAAC Carrie AABJnsAAGAAAdfOAAD Tom AABJnsAAGAAAdfOAAF Izbrane vrstice Alan. SQL> izbriši iz imen a where rowid> (izberite min (rowid) iz imen b, kjer je b.name = a.name); vrstice izbrisane. SQL> izberite rowid, ime iz imen; ROWID NAME ------------------ ------------------------------ AABJnsAAGAAAdfOAAA Alan AABJnsAAGAAAdfOAAC Carrie AABJnsAAGAAAdfOAAD Izbrane so Tom vrstice. SQL> ureja; Zaveza je končana.

Metoda 4 od 4: Brisanje vrstic po stolpcih

Brisanje podvojenih zapisov v Oracle 11. koraku
Brisanje podvojenih zapisov v Oracle 11. koraku

Korak 1. Izberite vrstico

Po "SQL" vnesite "select * from names;" da bi lahko videl črto.

Brisanje podvojenih zapisov v Oracle 12. koraku
Brisanje podvojenih zapisov v Oracle 12. koraku

Korak 2. Odstranite podvojene vrstice tako, da identificirate njihove stolpce

Po "SQL" "vnesite" izbriši iz imen a where rowid> (izberite min (rowid) iz imen b, kjer je b.name = a.name in b.age = a.age); " odstraniti podvojene zapise.

Izbrišite podvojene zapise v Oracle 13. koraku
Izbrišite podvojene zapise v Oracle 13. koraku

Korak 3. Preverite dvojnike

Ko dokončate zgornje korake, vnesite "select * from names;" nato se "zavežite", da preverite, ali so bili dvojniki dejansko odstranjeni.

SQL> izberite * iz imen; IME STAROST ------------------------------ ---------- Alan 50 Citra 51 Tomi 52 Alan 50 izbrane vrstice. SQL> izbriši iz imen a where rowid> (izberite min (rowid) iz imen b, kjer je b.name = a.name in b.age = a.age); vrstica izbrisana. SQL> izberite * iz imen; IME STAROST ------------------------------ ---------- Alan 50 Citra 51 Tomi Izbrano je 52 vrstic. SQL> ureja; Zaveza je končana.

Opozorilo

  • Ustvarite podvojeno tabelo v prijavi, da jo boste lahko uporabili kot referenco vsebine, ko niso bili izbrisani nobeni podatki (če imate kakršna koli vprašanja).

    SQL> ustvarite tabelo alan.names_backup kot izberite * iz imen; Tabela je ustvarjena.

Priporočena: