Funcția Oracle Replace

Functia Oracle Replace



În acest tutorial, vom învăța cum să folosim funcția replace() din Oracle pentru a înlocui toate aparițiile unui subșir cu un alt set de caractere.

Sintaxa funcției Oracle Replace().

Următorul cod arată sintaxa funcției replace():







A INLOCUI ( șir_sursă, subșir, șir_înlocuire ) ;



Funcția acceptă trei parametri:



  1. șir_sursă – definește șirul sursă care trebuie căutat.
  2. Subșir – definește subșirul care urmează să fie înlocuit.
  3. replacement_string – stabilește șirul sau setul de caractere care sunt înlocuite în locul subșirului. Acesta este un parametru opțional. Dacă lipsește valoarea parametrului replacement_string, funcția elimină toate aparițiile subșirului din șirul sursă.

În mod similar, dacă subșirul este gol, funcția nu face nimic și returnează șirul_sursă.





Funcția returnează un tip de șir cu toate aparițiile subșirului înlocuite cu șirul_înlocuire.

Exemple de funcție Oracle Replace().

Următoarele exemple demonstrează modul în care funcția se comportă sub diferite tipuri de parametri și de intrare:



Exemplul 1 – Înlocuiți apariția subșirului

Exemplul de mai jos ilustrează utilizarea principală a funcției replace() cu toți parametrii de intrare furnizați.

Selectați a inlocui ( „Dezvoltare baze de date Oracle” , 'ab' , 'X y' ) AS înlocuit
din dual;

Interogarea de mai sus folosește funcția înlocuire() pentru a înlocui caracterele (ab) cu (xy). Ieșire rezultată:

ÎNLOCUIT |
--------------------------+
Dezvoltarea Oracle datxyase |

Exemplul 2 – Utilizarea funcției de înlocuire pentru a elimina un subșir

După cum am menționat, putem folosi funcția replace() pentru a elimina un subșir din șirul sursă. Acest lucru se întâmplă atunci când nu furnizăm valoarea din subșir așa cum se arată:

SELECT înlocuiește ( „https://linuxhint.com” , „https://” ) AS d FROM dual;

Rezultat:

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

Exemplul 3 – Înlocuiți valorile într-un tabel

Folosim adesea funcția înlocuire() pentru a înlocui valorile dintr-un tabel al bazei de date. Luați exemplul de tabel prezentat:

creați tabelul sample_date
(
id număr,
prenume  varchar2 ( cincizeci ) ,
adresa_ip  varchar2 ( douăzeci ) ,
adresa_btc varchar2 ( cincizeci ) ,
card_credit varchar2 ( cincizeci ) ,
identificator  varchar2 ( 40 ) ,
cheie primară constrângere sample_pk ( id )
) ;
inserați în sample_data ( id , prenume, adresa_ip, adresa_btc, card_credit, identificator )
valorile ( unsprezece , „Wallas” , „169.158.70.77” , „1CNz5d1d5SC8SaR6dFSVihwztqYx5Fg77q” , „4017955174552” ,
„26811d77-0a3a-4397-bc33-f7835f7c7ab9” ) ;
inserați în sample_data ( id , prenume, adresa_ip, adresa_btc, card_credit, identificator )
valorile ( 12 , 'Ian' , „148.190.10.178” , „1ADxBV7n9JeDDcb8pL24J9wV54mcSRHdu7” , „4017956704480827” ,
„a69fe590-bc1b-4001-8ff8-154bcdb5802d” ) ;
inserați în sample_data ( id , prenume, adresa_ip, adresa_btc, card_credit, identificator )
valorile ( 13 , 'Paști' , „150.86.18.140” , „126hVKom2Foy9LEA6M4pUAT1h97c2rSD8B” , „4017953296787867” ,
„34ac9385-9e1e-4d13-9537-c4eedb9f2c35” ) ;

Înainte de declarația de actualizare:

SELECTAȚI FIRST_NAME, IP_ADDRESS, CREDIT_CARD FROM SAMPLE_DATA sd;

Putem folosi funcția înlocuire() pentru a înlocui toate aparițiile lui 4 din coloana credit_card cu un 5.

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

După declarația de actualizare:

În tabelul rezultat, putem verifica că valorile din coloanele credit_card au fost înlocuite de la 4 la 5.

Concluzie

Prin acest tutorial, ați înțeles funcționarea funcției de înlocuire () în bazele de date Oracle.