Dette innlegget tar sikte på å vise deg hvordan du bruker dekode () -funksjonen i Oracle -spørsmål. Decode () -funksjonen lar deg introdusere den innebygde if-da-ELSE-logikken i et Oracle-spørring.
Funksjonssyntaks, parametere og returverdi
Følgende kodebit betegner funksjonen til dekode () -funksjonen i Oracle:
Avkode (uttrykk, søke, resultat [, søke, resultat] ... [, standard]);Hvor:
Eksempelfunksjonsbruk
Følgende eksempel viser en grunnleggende funksjonsbruk på dekode () -funksjonen:
Velg Dekode (10, 10, 'True') fra dual;Funksjonen utfører en betinget sjekk som vist i følgende:
Hvis 10 = 10 daDette skal returnere sant som vist i følgende:
Dekode (10,10, 'True') |Hvis tilstanden er falsk, returnerer funksjonen null som vist i følgende:
Velg Dekode (10, 11, 'True') fra Dual;Siden tilstanden er falsk, returnerer funksjonen null i dette tilfellet.
Vi kan inkludere en returverdi hvis tilstanden er falsk som vist på følgende:
Velg Dekode (10, 11, 'True', 'False') fra Dual;Dette skal komme tilbake som følger:
Dekode (10,11, 'True', 'False') |Vi kan også sammenligne det første argumentet med en liste over argumenter som vist i følgende:
Velg Dekode (1, 2, 'One', 1, 'One') fra Dual;I dette tilfellet sammenligner funksjonen det første argumentet, med verdien av 1, med det andre argumentet. Hvis det er like, returnerer funksjonen det tredje argumentet. Ellers sammenligner den verdien med det fjerde argumentet og returnerer det femte argumentet som sant.
Resultat:
Dekode (1,2, 'One', 1, 'One') |Vi kan også definere en returverdi hvis ingen samsvar blir funnet.
Velg Dekode (5, 2, 'One', 1, 'One', 'Verdi må verken 1 eller 2') fra dobbelt;Eksempel Resultat:
Avkode (5,2, 'One', 1, 'One')Verdien må ikke være 1 eller 2 |
Konklusjon
Dette innlegget dekket det grunnleggende om å jobbe med Oracle's Decode () -funksjon for å håndtere mer komplekse IF-Else-uttalelser i Oracle-tabeller.