SQL道場 算術関数 EXP関数

SQLで指数値を計算EXP関数について記載しています。

対応データベースSQL Server MySQL Oracle PostgreSQL DB2 SQLite Access

EXP関数の文法

SELECT EXP(数値) FROM テーブル
引数数値数値型 数値(任意の数)
返値数値型 引数に対する指数値

SQLServer

引数数値float型 数値(任意の数)
返値float型 引数に対する指数値

EXP関数は指定された数値の指数を計算して戻します。引数で指定した数値に対する対数を計算する関数です。自然対数「e(=2.718281828・・・)」の引数乗を計算します。EXP関数はSQL92/99で既定されている関数ではありませんが、多くのデータベースでサポートされています。

Oracle

EXPは、en乗を戻します(e = 2.71828183)。このファンクションは、引数と同じ型の値を戻します。

このファンクションは、引数として、任意の数値データ型、または暗黙的に数値データ型に変換可能な数値以外のデータ型を取ります。引数がBINARY_FLOATの場合、このファンクションはBINARY_DOUBLEを戻します。それ以外の場合、引数と同じ数値データ型を戻します。

https://docs.oracle.com/cd/F19136_01/sqlrf/EXP.html

対数を求める場合は、LOG関数を使用します。

実行例

MySQLの実行例

/* MySQL 指数値の計算サンプル */
SELECT SUTI,EXP(SUTI) FROM testdb.WORK;
指数値を計算EXP関数 MySQLの実行サンプル

SQLServerの実行例

/* SQLServer べき乗のサンプル */
SELECT 
    power(2,2) as POW_value2  
	,power(4,2) as POW_value3  
    ,power(6,3) as POW_value4  
	,power(-6,3) as POW_value5  /* 数値1にマイナスの値を指定 */
;
指数値を計算EXP関数 SQLServerの実行サンプル