Funkcija zamenjave Oracle

Funkcija Zamenjave Oracle



V tej vadnici se bomo naučili, kako uporabiti funkcijo replace() v Oraclu za zamenjavo vseh pojavitev podniza z drugim naborom znakov.

Sintaksa funkcije Oracle Replace().

Naslednja koda prikazuje sintakso funkcije replace():







ZAMENJATI ( izvorni_niz, podniz, nadomestni_niz ) ;



Funkcija sprejme tri parametre:



  1. izvorni_niz – definira izvorni niz, po katerem se išče.
  2. Podniz – definira podniz, ki ga je treba zamenjati.
  3. nadomestni_niz – vzpostavi niz ali nabor znakov, ki so nadomeščeni na mestu podniza. To je neobvezen parameter. Če vrednost parametra replacement_string manjka, funkcija odstrani vse pojavitve podniza iz izvornega niza.

Podobno, če je podniz prazen, funkcija ne naredi ničesar in vrne izvorni_niz.





Funkcija vrne vrsto niza z vsemi pojavitvami podniza, zamenjanega z nadomestnim_nizom.

Primeri funkcij Oracle Replace().

Naslednji primeri prikazujejo, kako se funkcija obnaša pri različnih vrstah parametrov in vnosov:



Primer 1 – Zamenjaj podniz

Spodnji primer ponazarja primarno uporabo funkcije replace() z vsemi podanimi vhodnimi parametri.

izberite zamenjati ( 'Razvoj baze podatkov Oracle' , 'ab' , 'xy' ) KOT zamenjan
iz dvojine;

Zgornja poizvedba uporablja funkcijo replace() za zamenjavo znakov (ab) z (xy). Rezultat:

ZAMENJANO |
---------------------------+
Razvoj Oracle datxyase |

2. primer – uporaba funkcije zamenjave za odstranitev podniza

Kot že omenjeno, lahko s funkcijo replace() odstranimo podniz iz izvornega niza. To se zgodi, ko ne podamo vrednosti iz podniza, kot je prikazano:

IZBERI zamenjaj ( 'https://linuxhint.com' , 'https://' ) KOT d IZ dvojine;

Izid:

D |
-------------+
linuxhint.com |

Primer 3 – Zamenjava vrednosti v tabeli

Pogosto uporabljamo funkcijo replace() za zamenjavo vrednosti v tabeli zbirke podatkov. Vzemite prikazano primer tabele:

ustvari tabelo sample_data
(
id številka,
ime_varchar2 ( petdeset ) ,
ip_naslov varchar2 ( dvajset ) ,
btc_naslov varchar2 ( petdeset ) ,
kreditna_kartica varchar2 ( petdeset ) ,
identifikator varchar2 ( 40 ) ,
primarni ključ omejitve sample_pk ( id )
) ;
vstavite v sample_data ( id , first_name, ip_address, btc_address, credit_card, identifikator )
vrednote ( enajst , 'Wallas' , '169.158.70.77' , '1CNz5d1d5SC8SaR6dFSVihwztqYx5Fg77q' , '4017955174552' ,
'26811d77-0a3a-4397-bc33-f7835f7c7ab9' ) ;
vstavite v sample_data ( id , first_name, ip_address, btc_address, credit_card, identifikator )
vrednote ( 12 , 'Ian' , '148.190.10.178' , '1ADxBV7n9JeDDcb8pL24J9wV54mcSRHdu7' , '4017956704480827' ,
'a69fe590-bc1b-4001-8ff8-154bcdb5802d' ) ;
vstavite v sample_data ( id , first_name, ip_address, btc_address, credit_card, identifikator )
vrednote ( 13 , 'Velika noč' , '150.86.18.140' , '126hVKom2Foy9LEA6M4pUAT1h97c2rSD8B' , '4017953296787867' ,
'34ac9385-9e1e-4d13-9537-c4eedb9f2c35' ) ;

Pred izjavo o posodobitvi:

IZBERI FIRST_NAME, IP_ADDRESS, CREDIT_CARD FROM SAMPLE_DATA sd;

S funkcijo replace() lahko zamenjamo vse pojavitve 4 v stolpcu credit_card s 5.

UPDATE SAMPLE_DATA SET CREDIT_CARD = REPLACE ( CREDIT_CARD, '4' , '5' ) ;

Po izjavi o posodobitvi:

V dobljeni tabeli lahko preverimo, ali so bile vrednosti v stolpcih kreditne kartice zamenjane s 4 na 5.

Zaključek

S to vadnico ste razumeli delovanje funkcije replace() v zbirkah podatkov Oracle.