Selles õpetuses õpime kasutama Oracle'i funktsiooni asendamine(), et asendada kõik alamstringi esinemised mõne muu märgikomplektiga.
Oracle Replace() funktsiooni süntaks
Järgmine kood näitab funktsiooni asendamise () süntaksit:
ASENDA ( allika_string, alamstring, asendusstring ) ;
Funktsioon aktsepteerib kolme parameetrit:
- source_string – määrab otsitava lähtestringi.
- Alamstring – määrab asendatava alamstringi.
- asendusstring – määrab stringi või märkide komplekti, mis asendatakse alamstringi asemel. See on valikuline parameeter. Kui parameetri asendamise_string väärtus puudub, eemaldab funktsioon lähtestringist kõik alamstringi esinemised.
Samamoodi, kui alamstring on tühi, ei tee funktsioon midagi ja tagastab lähtestringi.
Funktsioon tagastab stringitüübi, kus kõik alamstringi esinemised on asendatud asendusstringiga.
Oracle Replace() funktsiooni näited
Järgmised näited näitavad, kuidas funktsioon erinevate parameetri- ja sisenditüüpide korral käitub:
Näide 1 – Asenda alamstringi esinemine
Allolev näide illustreerib funktsiooni asendamise () esmast kasutamist koos kõigi ette nähtud sisendparameetritega.
vali asendada ( 'Oracle andmebaasi arendamine' , 'ab' , 'xy' ) AS vahetatudkahest;
Ülaltoodud päring kasutab asendamise () funktsiooni, et asendada tähemärgid (ab) tähega (xy). Tulemuseks olev väljund:
ASENDATUD |--------------------------+
Oracle datxyase arendamine |
Näide 2 – Asendusfunktsiooni kasutamine alamstringi eemaldamiseks
Nagu mainitud, saame lähtestringist alamstringi eemaldamiseks kasutada funktsiooni asendamine(). See juhtub siis, kui me ei esita alamstringi väärtust, nagu näidatud:
VALI asenda ( 'https://linuxhint.com' , 'https://' ) AS d FROM kahest;Tulemus:
D |-------------+
linuxhint.com |
Näide 3 – Väärtuste asendamine tabelis
Sageli kasutame andmebaasi tabelis väärtuste asendamiseks funktsiooni asendamine(). Võtke näidatud tabel:
loo tabel sample_data(
id number,
eesnimi varchar2 ( viiskümmend ) ,
ip_aadress varchar2 ( kakskümmend ) ,
btc_aadress varchar2 ( viiskümmend ) ,
krediitkaart varchar2 ( viiskümmend ) ,
identifikaator varchar2 ( 40 ) ,
piirang sample_pk primaarvõti ( id )
) ;
sisestage kausta sample_data ( id , eesnimi, ip_aadress, btc_aadress, krediitkaart, identifikaator )
väärtused ( üksteist , 'Wallas' , '169.158.70.77' , „1CNz5d1d5SC8SaR6dFSVihwztqYx5Fg77q” , '4017955174552' ,
'26811d77-0a3a-4397-bc33-f7835f7c7ab9' ) ;
sisestage kausta sample_data ( id , eesnimi, ip_aadress, btc_aadress, krediitkaart, identifikaator )
väärtused ( 12 , 'Ian' , '148.190.10.178' , „1ADxBV7n9JeDDcb8pL24J9wV54mcSRHdu7” , '4017956704480827' ,
'a69fe590-bc1b-4001-8ff8-154bcdb5802d' ) ;
sisestage kausta sample_data ( id , eesnimi, ip_aadress, btc_aadress, krediitkaart, identifikaator )
väärtused ( 13 , 'lihavõtted' , '150.86.18.140' , '126hVKom2Foy9LEA6M4pUAT1h97c2rSD8B' , '4017953296787867' ,
'34ac9385-9e1e-4d13-9537-c4eedb9f2c35' ) ;
Enne värskendamise avaldust:
VALI FIRST_NAME, IP_ADDRESS, CREDIT_CARD FROM SAMPLE_DATA sd;
Funktsiooni asendamiseks () saame kasutada kõik 4 esinemised veerus credit_card 5-ga.
VÄRSKENDAGE SAMPLE_DATA SET CREDIT_CARD = ASENDA ( KREDIITKAART, '4' , '5' ) ;Pärast värskendusavaldust:
Saadud tabelis saame kontrollida, kas krediitkaardi veergude väärtused on asendatud 4-lt 5-le.
Järeldus
Selle õpetuse kaudu mõistsite asendamise () funktsiooni Oracle'i andmebaasides.