SQL道場 算術関数 LN/LOG/LOG10関数
SQLで自然対数を求めるLN/LOG/LOG10関数について記載しています。
対応データベース:SQL Server MySQL Oracle PostgreSQL DB2 Access
EXP関数の文法
SELECT LN(数値) FROM テーブル
SELECT LOG(数値) FROM テーブル
SELECT LOG(底とする数値,数値) FROM テーブル
SELECT LOG10(数値) FROM テーブル
引数 | 数値 底とする数値 | 数値型 数値(任意の数) 数値型 数値(任意の数) |
返値 | 数値型 自然対数 |
SQLServer
引数 | 数値 底とする数値 | float型 数値(任意の数) float型 数値(任意の数) |
返値 | float型 自然対数 |
LN/LOG関数は指定された引数の自然対数を返します。引数の数値に0を指定した場合はエラーになります。OracleではLOG関数を使用する場合は、底とする数値は必須です。PostgreSQLでLOG(数値)と指定した場合は10を底としますが、LOG(底とする数値,数値)と指定することも可能です。
LOG10関数は10を底とする対数を返します。
実行例
MySQLの実行例
LN(X):X の自然対数 (つまり、X の底 e の対数) を返します。
LOG(X), LOG(B,X):1 つのパラメータで呼び出される場合、この関数は X
の自然対数を返します。
LOG2(X):X の底 2 の対数を返します。
LOG10(X):X
の底 10 の対数を返します。
/* MySQL 指数値の計算サンプル */
SELECT LN(数値);
SELECT LOG(数値);
SELECT LOG(数値,数値);
SELECT LOG2(数値);
SELECT LOG10(数値);
SQLServerの実行例
LOG(数値)、LOG(数値,対数の底):指定したの自然対数を返します。
LOG10(数値):指定した底 10 の対数を返します。
/* SQLServer 自然対数サンプル */
SELECT
LOG(数値)
,LOG(数値,数値)
,LOG10(数値)
;