SQL 関数一覧 (O‐S) > POWER、LOG、SQRT

累乗、べき乗を求める、対数を求める、二乗根、平方根を求める

syntax

POWER ( number1 , number2 )
LOG ( number1 , number2 )
SQRT ( number1 )
return [ BINARY_DOUBLE | BINARY_FLOAT | NUMBER ]

parameter

number1数値式
number2数値式

return

  • POWER : 数値式 number1 の 「number2」 乗を戻す。
  • LOG : 数値式 number1 を底とした number2 の対数を戻す。
  • SQRT : 数値式 number1 の平方根を戻す。

avail

  • SQL および PL/SQL の両方で使用可能。

POWER 関数の内容

数値式 number1 を底とした 「number2」 指数の数値を戻す。
他の高級言語では number1 ^ number2 と表現される。
戻り値のデータ型は number1number2 の優先順位の高いデータ型となる。

PL/SQL における累乗計算の豆知識

PL/SQL では累乗が演算子 (**) としてサポートされている。 例 num := a ** b;

注意

Oracle の NUMBER 型では虚数を範ちゅうとしていないデータ型であるため number1 がマイナスの場合に number2 に小数を含むとエラー(※)となる。

(※) マニュアルには書かれていないので断定できないが BINARY_DOUBLE および BINARY_FLOAT 型において虚数解となる場合には 非数値をあらわす 'Nan' を戻す。

LOG 関数の内容

数値式 number1 を底とした number2 の対数を戻す。
ネイピア数 を底にした 対数は 自然対数(Natural Logarithm) と呼ばれ。底を 10 にしたものは 常用対数 と呼ばれる。
前述の POWER 関数で対数の式を表現すると

x = LOG ( m , n ) ⇔  n = POWER ( m , x )  

SQRT(SQuare RooT) 関数の内容

数値式 number1 の平方根(二乗根、自乗根)を戻す。POWER( number1 , 0.5) と同等。
POWER 同様、虚数解になる場合、 NUMBER 型ならエラー、浮動小数点型では Nan を戻す。(こちらはマニュアルにも明記されている)

POWER 使用例

SQL> select num1, num2, POWER(num1, num2) from power_sample;
 
      NUM1       NUM2 POWER(NUM1,NUM2)
---------- ---------- ----------------
         2          0                1
         2          1                2
         2          2                4
        -2         -2              .25
        -2         -3            -.125
         1         .5                1

虚数となる式 (-1)^(0.5) = - i (=虚数 i

SQL> select POWER(-1, 0.5) from dual;
select POWER(-1, 0.5) from dual
             *
行1でエラーが発生しました。:
ORA-01428: 引数'-1'が有効範囲外です
SQL> select POWER(-1d, 0.5) from dual;
 
POWER(-1D,0.5)
--------------
           Nan

SQRT 使用例

SQL> select num, SQRT(num) from sqrt_sample;
 
       NUM  SQRT(NUM)
---------- ----------
         1          1
         2 1.41421356
         3 1.73205081
         4          2
         5 2.23606798


SQL 関数 - POWER,SQRT,SQRT 関連

 
アルファベット別 関数一覧 ショートカット
ABCDEFG
HILMNOP
RSTUVWX
日本オラクル
■ 日本オラクル 株式会社
■ オラクルマスター資格 (オラクルマスターとは
■ 会員制(無料)の公式技術サイト