I Oracle er EXP()
funktion returnerer værdien af e (grundlaget for naturlige logaritmer) hævet til argumentets magt.
Nummeret e , også kendt som Eulers tal, er en matematisk konstant omtrent lig med 2,71828.
Syntaks
Syntaksen ser sådan ud:
EXP(n)
Hvor n
er enhver numerisk datatype eller enhver ikke-numerisk datatype, der implicit kan konverteres til en numerisk datatype.
Eksempel
Her er et eksempel:
SELECT EXP(5)
FROM DUAL;
Resultat:
EXP(5) ___________________________________________ 148.413159102576603421115580040552279624
Vi kan få værdien af e ved at bestå 1:
SELECT EXP(1)
FROM DUAL;
Resultat:
EXP(1) ___________________________________________ 2.71828182845904523536028747135266249776
Brøker
Argumentet kan indeholde en brøkdel:
SELECT EXP(3.1434178)
FROM DUAL;
Resultat:
EXP(3.1434178) ____________________________________________ 23.18296635099516749674346410871112767972
Negative værdier
Argumentet kan være negativt:
SELECT EXP(-5)
FROM DUAL;
Resultat:
EXP(-5) _______________________________________________ 0.006737946999085467096636048423148424248801
Udtryk
Argumentet kan indeholde udtryk som dette:
SELECT EXP(2 * 3)
FROM DUAL;
Resultat:
EXP(2*3) ___________________________________________ 403.428793492735122608387180543388279609
Ikke-numeriske argumenter
Argumentet kan være enhver numerisk datatype eller enhver ikke-numerisk datatype, der implicit kan konverteres til en numerisk datatype.
Her er et eksempel på, hvad der sker, når argumentet ikke opfylder disse kriterier:
SELECT EXP('Cat')
FROM DUAL;
Resultat:
Error starting at line : 1 in command - SELECT EXP('Cat') FROM DUAL Error report - ORA-01722: invalid number
Nul-argumenter
EXP()
returnerer null
hvis argumentet er null
:
SET NULL 'null';
SELECT EXP(null)
FROM DUAL;
Resultat:
EXP(NULL) ____________ null
Som standard returnerer SQLcl og SQL*Plus et tomt mellemrum, når der opstår en null-værdi som et resultat af en SQL SELECT
udmelding.
Du kan dog bruge SET NULL
for at angive en anden streng, der skal returneres. Her specificerede jeg, at strengen null
skal returneres.
Manglende argumenter
Kalder EXP()
med det forkerte antal argumenter eller uden argumenter resulterer i en fejl:
SELECT EXP()
FROM DUAL;
Resultat:
Error starting at line : 1 in command - SELECT EXP() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action:
Og:
SELECT EXP(10, 2)
FROM DUAL;
Resultat:
Error starting at line : 1 in command - SELECT EXP(10, 2) FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: