Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Função EXP() no Oracle


No Oracle, o EXP() função retorna o valor de e (a base dos logaritmos naturais) elevada à potência do argumento.

O número e , também conhecido como número de Euler, é uma constante matemática aproximadamente igual a 2,71828.

Sintaxe


A sintaxe fica assim:
EXP(n)

Onde n é qualquer tipo de dados numérico ou qualquer tipo de dados não numérico que possa ser convertido implicitamente em um tipo de dados numérico.

Exemplo


Aqui está um exemplo:
SELECT EXP(5)
FROM DUAL;

Resultado:
                                     EXP(5) 
___________________________________________ 
   148.413159102576603421115580040552279624

Podemos obter o valor de e passando 1:
SELECT EXP(1)
FROM DUAL;

Resultado:
                                     EXP(1) 
___________________________________________ 
   2.71828182845904523536028747135266249776

Frações


O argumento pode conter uma parte fracionária:
SELECT EXP(3.1434178)
FROM DUAL;

Resultado:
                              EXP(3.1434178) 
____________________________________________ 
   23.18296635099516749674346410871112767972

Valores negativos


O argumento pode ser negativo:
SELECT EXP(-5)
FROM DUAL;

Resultado:
                                        EXP(-5) 
_______________________________________________ 
   0.006737946999085467096636048423148424248801 

Expressões


O argumento pode incluir expressões como esta:
SELECT EXP(2 * 3)
FROM DUAL;

Resultado:
                                   EXP(2*3) 
___________________________________________ 
   403.428793492735122608387180543388279609 

Argumentos não numéricos


O argumento pode ser qualquer tipo de dados numérico ou qualquer tipo de dados não numérico que possa ser convertido implicitamente em um tipo de dados numérico.

Aqui está um exemplo do que acontece quando o argumento não satisfaz esse critério:
SELECT EXP('Cat')
FROM DUAL;

Resultado:
Error starting at line : 1 in command -
SELECT EXP('Cat')
FROM DUAL
Error report -
ORA-01722: invalid number

Argumentos nulos


EXP() retorna null se o argumento for null :
SET NULL 'null';

SELECT EXP(null)
FROM DUAL;

Resultado:
   EXP(NULL) 
____________ 
        null

Por padrão, SQLcl e SQL*Plus retornam um espaço em branco sempre que um valor nulo ocorre como resultado de um SQL SELECT demonstração.

No entanto, você pode usar SET NULL para especificar uma string diferente a ser retornada. Aqui eu especifiquei que a string null deve ser devolvido.

Argumentos ausentes


Chamando EXP() com o número errado de argumentos ou sem argumentos resulta em um erro:
SELECT EXP()
FROM DUAL;

Resultado:
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:

E:
SELECT EXP(10, 2)
FROM DUAL;

Resultado:
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: