SQL - EXP() Function



The SQL EXP() function accepts a numeric value as an argument and calculates the base of the natural logarithms, e, to the power of the given value. In other words, this function returns Ex, where x is the argument, and E is Euler's constant, the base of the natural logarithms.

The Euler’s number is simply defined as a mathematical expression that is usually used as the base of natural logarithms. It is a non-terminating and a non-recurring decimal number that holds the value of 2.718281828459045… However, the number is constricted to only two decimals in most problems to be solved, i.e., 2.71. This Euler’s number is mostly used in problems that deal with exponential functions (either increasing or decreasing). The number is denoted by a letter e.

Syntax

Following is the syntax of SQL EXP() function −

EXP(x)

where, x is the value for which the exponential value needs to be calculated.

Example

The exponential value of 0 is 1.

In the following example we are trying to pass the value 0 as an argument to the method.

SELECT EXP(0) 
AS exp_value

When we run above program, it produces following result −

+-----------+
| exp_Value |
+-----------+
| 1         |
+-----------+

Example

In here, we are passing a fractional value '76.45' as an argument to the method −

SELECT EXP(76.45) 
AS exp_value

While executing the above code we get the following output −

+----------------------+
| exp_Value            |
+----------------------+
| 1.59152381451917E+33 |
+----------------------+

Example

Now, we are trying to pass the value '1' to this function as a string.

SELECT EXP('1') 
AS exp_value

Following is an output of the above code −

+------------------+
| exp_Value        |
+------------------+
| 2.71828182845905 |
+------------------+

Example

We can also pass negative value as an argument to this function as shown below −

SELECT EXP(-76) 
AS exp_value

Output of the above code is as follows −

+----------------------+
| exp_Value            |
+----------------------+
| 9.85415468611126E-34 |
+----------------------+

Example

We can also pass the mathematical constant PI as an argument to this function, it returns it's equivalent exponential value.

SELECT EXP(PI()) 
AS exp_value

Output of the above code is as follows −

+------------------+
| exp_Value        |
+------------------+
| 23.1406926327793 |
+------------------+

Example

Assume we have created a table with name CUSTOMERS as shown below −

create table CUSTOMERS(ID INT NOT NULL, 
NAME VARCHAR(20) NOT NULL, 
AGE INT NOT NULL, 
ADDRESS CHAR(25), 
SALARY DECIMAL(18, 2), 
PRIMARY KEY(ID));
Commands completed successfully.

Let us insert r values into it −

insert INTO CUSTOMERS VALUES(1, 'Ramesh', 32, 'Ahmedabad', 2000.00);
insert INTO CUSTOMERS VALUES(2, 'Khilan', 25, 'Delhi', 1500.00);
insert INTO CUSTOMERS VALUES(3, 'kaushik', 23, 'Kota', 2000.00);
insert INTO CUSTOMERS VALUES(4, 'Chaitali', 25, 'Mumbai', 6500.00);
insert INTO CUSTOMERS VALUES(5, 'Hardik', 27, 'Bhopal', 8500.00);
insert INTO CUSTOMERS VALUES(6, 'Komal', 22, 'MP', 4500.00);
insert INTO CUSTOMERS VALUES(7, 'Muffy', 24, 'Indore', 10000.00);

Following query calculates the exponential value of the age of all the customers −

SELECT NAME, AGE, SALARY,
EXP(AGE) 
AS exp_salaryvalue
FROM CUSTOMERS

The result produced is as follows −

+----------+-----+----------+------------------+
| NAME     | AGE | SALARY   | exp_agevalue     |
+----------+-----+----------+------------------+
| Ramesh   |  32 |  2000.00 | 78962960182680.7 |
| Khilan   |  25 |  1500.00 | 72004899337.3859 |
| kaushik  |  23 |  2000.00 | 9744803446.2489  |
| Chaitali |  25 |  6500.00 | 72004899337.3859 |
| Hardik   |  27 |  8500.00 | 532048240601.799 |
| Komal    |  22 |  4500.00 | 3584912846.13159 |
| Muffy    |  24 | 10000.00 | 26489122129.8435 |
+----------+-----+----------+------------------+
sql-numeric-functions.htm
Advertisements