Oracleでは、POWER()
関数は、最初の引数を2番目の引数の累乗で返します。
構文
構文は次のようになります:
POWER(n2, n1)
各引数は、任意の数値データ型、または暗黙的に数値データ型に変換できる任意の非数値データ型にすることができます。
ただし、 n2
の場合、両方の引数は任意の数にすることができます が負の場合、 n1
整数である必要があります。
例
デモンストレーションの例を次に示します。
SELECT POWER(8, 2)
FROM DUAL;
結果:
POWER(8,2) _____________ 64
そしてここでは、2番目の引数で小数部分を使用しています:
SELECT POWER(8, 2.5)
FROM DUAL;
結果:
POWER(8,2.5) __________________________________________ 181.01933598375616624661615669884135406
ただし、小数部分の使用は、最初の引数が正の場合にのみ可能です。
負の値
前述のように、最初の引数が負の場合、2番目の引数は整数でなければなりません:
SELECT POWER(-8, 2)
FROM DUAL;
結果:
POWER(-8,2) ______________ 64
2番目の数値が整数でない場合は次のようになります。
SELECT POWER(-8, 2.5)
FROM DUAL;
結果:
Error starting at line : 1 in command - SELECT POWER(-8, 2.5) FROM DUAL Error report - ORA-01428: argument '-8' is out of range
非数値引数
引数は、任意の数値データ型、または暗黙的に数値データ型に変換できる任意の非数値データ型にすることができます。
引数がその基準を満たさない場合に何が起こるかの例を次に示します。
SELECT POWER('Gosh', 'Dang')
FROM DUAL;
結果:
Error starting at line : 1 in command - SELECT POWER('Gosh', 'Dang') FROM DUAL Error report - ORA-01722: invalid number
ヌル引数
POWER()
null
を返します 引数がnull
の場合 :
SET NULL 'null';
SELECT
POWER(null, 3),
POWER(8, null),
POWER(null, null)
FROM DUAL;
結果:
POWER(NULL,3) POWER(8,NULL) POWER(NULL,NULL) ________________ ________________ ___________________ null null null
デフォルトでは、SQLclおよびSQL * Plusは、SQL SELECT
の結果としてnull値が発生するたびに空白を返します。 声明。
ただし、SET NULL
は使用できます 返される別の文字列を指定します。ここでは、文字列null
を指定しました 返却する必要があります。
引数がありません
POWER()
の呼び出し 引数がないとエラーが発生します:
SELECT POWER()
FROM DUAL;
結果:
Error starting at line : 1 in command - SELECT POWER() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action:
また、引数が多すぎる場合にも同じことが当てはまります。
SELECT POWER(10, 2, 3)
FROM DUAL;
結果:
Error starting at line : 1 in command - SELECT POWER(10, 2, 3) FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: