Oracle Translate Function

Oracle Translate Function
Strengmanipulering og strengfunksjoner er allsidige funksjoner når det gjelder databaser.

I denne opplæringen lærer vi om Translate () -funksjonen i Oracle -databasen for å erstatte en tegnsekvens med en annen.

Oracle Translate Function

I Oracle lar Translate -funksjonen deg erstatte et gitt sett med karakterer med en annen, en karakter om gangen.

Ta følgende utdrag som uttrykker funksjonssyntaks:

Oversette (streng, fra_string, erstatning_string);

Fra den medfølgende syntaksen godtar funksjonen tre hovedargumenter:

  1. Streng - Denne parameteren definerer strengen som skal oversettes av funksjonen.
  2. Original_string - Denne parameteren lar deg oppgi settet med tegn som bør byttes ut.
  3. erstatning_string - Som navnet antyder, gjør denne parameteren deg i stand til å spesifisere strengen som samsvarer med fra_stringsparameteren etter lengde og type.

Når oversettelsesfunksjonen utfører den spesifiserte substitusjonen, returnerer den strengen med de erstattede matchende forekomstene. Imidlertid, hvis noen funksjonsparametere er null, produserer funksjonen automatisk en nulltype.

Eksempelfunksjonsbruk

Følgende er eksempler som viser bruken av oversettelsesfunksjonen ().

Eksempel 1: Grunnleggende funksjonsbruk
Følgende kode viser hvordan du bruker oversettelsesfunksjonen for å erstatte alle “A” -tegn med et stjerne -tegn:

Velg Oversats ('Oracle Databases', 'A', '*') som oversatt
fra dobbelt;

Den resulterende strengen er som følger:

Oversatt
---------------------
Eller*cle d*t*b*ses

Eksempel 2: Bytte ut flere tegn
Vi kan også erstatte flere tegn ved å bruke oversettelsesfunksjonen som vist i følgende eksempel:

Velg Oversats ('Oracle Databases', 'AB', 'XY') som oversatt
fra dobbelt;

Produksjon:

Oversatt
------------------
Orxcle dxtxyxses

Eksempel 3: Angi erstatnings_string som tom
Tenk på dette eksemplet som demonstrerer hvordan funksjonen oppfører seg hvis vi setter parameteren for erstatning_string til en tom verdi.

Velg Oversats ('Oracle Databases', 'AB', ") som oversatt
fra dobbelt;

I dette tilfellet returnerer funksjonen en tom streng. Dette er fordi en tom streng blir behandlet som en nullverdi. Husk at funksjonen alltid returnerer null hvis noen av parametrene er null.

Eksempel 4: Uovertruffen sekvens
Hva skjer hvis de spesifiserte fra_stringstegnene ikke finnes i Source_String?

Følgende illustrasjon demonstrerer dette:

Velg Oversats ('Oracle Databases', 'XX', '*') som oversatt
fra dobbelt;

Produksjon:

Oversatt
-----------------
Oracle -databaser

Som du kan gjette, utfører ikke funksjonen noen handling på kildestrengen.

Konklusjon

Denne opplæringen lærte deg hvordan du bruker Translate () -funksjonen i Oracle-databasen for å utføre en en-til-en-karaktersubstitusjon. Merk at selv om oversettelsesfunksjonen oppfører seg på samme måte som erstatningsfunksjonen, er de forskjellige i erstatningsmodus. Erstatningsfunksjonen utfører en hel strengerstatning sammenlignet med å erstatte ett tegn om gangen i oversettelsesfunksjonen.