SQL - EXP() 函式



SQL EXP() 函式接受一個數值作為引數,並計算自然對數的底數 e 的給定值的冪。換句話說,此函式返回 Ex,其中 x 是引數,E 是尤拉常數,即自然對數的底數。

尤拉數簡單地定義為一個數學表示式,通常用作自然對數的底數。它是一個無限不迴圈小數,其值為 2.718281828459045… 然而,在大多數需要解決的問題中,這個數字通常只取兩位小數,即 2.71。尤拉數主要用於處理指數函式(遞增或遞減)的問題。該數字用字母 e 表示。

語法

以下是 SQL EXP() 函式的語法:

EXP(x)

其中,x 是需要計算指數值的數值。

示例

0 的指數值為 1。

在下面的示例中,我們嘗試將值 0 作為引數傳遞給方法。

SELECT EXP(0) 
AS exp_value

執行以上程式後,會產生以下結果:

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

示例

在這裡,我們將分數值 '76.45' 作為引數傳遞給方法:

SELECT EXP(76.45) 
AS exp_value

執行以上程式碼後,我們得到以下輸出:

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

示例

現在,我們嘗試將值 '1' 作為字串傳遞給此函式。

SELECT EXP('1') 
AS exp_value

以下是以上程式碼的輸出:

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

示例

我們也可以將負值作為引數傳遞給此函式,如下所示:

SELECT EXP(-76) 
AS exp_value

以上程式碼的輸出如下:

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

示例

我們還可以將數學常數 PI 作為引數傳遞給此函式,它將返回其等效的指數值。

SELECT EXP(PI()) 
AS exp_value

以上程式碼的輸出如下:

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

示例

假設我們建立了一個名為 CUSTOMERS 的表,如下所示:

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.

讓我們向其中插入一些值:

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);

以下查詢計算所有客戶年齡的指數值:

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

產生的結果如下:

+----------+-----+----------+------------------+
| 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
廣告