sql >> Database teknologi >  >> RDS >> Oracle

EXP() Funktion i Oracle

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:

  1. Spring Boot Query-annotering med nativeQuery virker ikke i Postgresql

  2. Oracle:Hvis der findes en tabel

  3. Anmodningen mislykkedes med HTTP-status 401:Uautoriseret I SSRS

  4. Hvornår skal man bruge nedarvede tabeller i PostgreSQL?