Oracle
 sql >> база данни >  >> RDS >> Oracle

EXP() Функция в Oracle

В Oracle, EXP() функцията връща стойността на e (основата на естествените логаритми), повдигнати на степен на аргумента.

Числото e , известен също като числото на Ойлер, е математическа константа, приблизително равна на 2,71828.

Синтаксис

Синтаксисът е така:

EXP(n)

Където n е всеки числов тип данни или всеки нечисловен тип данни, който може да бъде имплицитно преобразуван в числов тип данни.

Пример

Ето един пример:

SELECT EXP(5)
FROM DUAL;

Резултат:

                                     EXP(5) 
___________________________________________ 
   148.413159102576603421115580040552279624

Можем да получим стойността на e чрез преминаване на 1:

SELECT EXP(1)
FROM DUAL;

Резултат:

                                     EXP(1) 
___________________________________________ 
   2.71828182845904523536028747135266249776

Дроби

Аргументът може да съдържа дробна част:

SELECT EXP(3.1434178)
FROM DUAL;

Резултат:

                              EXP(3.1434178) 
____________________________________________ 
   23.18296635099516749674346410871112767972

Отрицателни стойности

Аргументът може да бъде отрицателен:

SELECT EXP(-5)
FROM DUAL;

Резултат:

                                        EXP(-5) 
_______________________________________________ 
   0.006737946999085467096636048423148424248801 

Изрази

Аргументът може да включва изрази като този:

SELECT EXP(2 * 3)
FROM DUAL;

Резултат:

                                   EXP(2*3) 
___________________________________________ 
   403.428793492735122608387180543388279609 

Нечислови аргументи

Аргументът може да бъде всеки числов тип данни или всеки нечисловен тип данни, който може да бъде имплицитно преобразуван в числов тип данни.

Ето пример за това какво се случва, когато аргументът не отговаря на този критерий:

SELECT EXP('Cat')
FROM DUAL;

Резултат:

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

Нулеви аргументи

EXP() връща null ако аргументът е null :

SET NULL 'null';

SELECT EXP(null)
FROM DUAL;

Резултат:

   EXP(NULL) 
____________ 
        null

По подразбиране SQLcl и SQL*Plus връщат празно пространство, когато се появи нулева стойност в резултат на SQL SELECT изявление.

Можете обаче да използвате SET NULL за да посочите различен низ, който да бъде върнат. Тук посочих, че низът null трябва да бъдат върнати.

Липсващи аргументи

Извикване на EXP() с грешен брой аргументи или без никакви аргументи води до грешка:

SELECT EXP()
FROM DUAL;

Резултат:

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:

И:

SELECT EXP(10, 2)
FROM DUAL;

Резултат:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Свързване с Oracle Database чрез C#?

  2. Преброяване на броя на поява на символ в Oracle SQL

  3. Как да архивирате файл в PL/SQL?

  4. Грешка в SQL Oracle LEFT JOIN и SUBQUERY:ORA-00905:липсва ключова дума

  5. Отражение в PLSQL?