SQL POWER関数:数値を指定した累乗にする

SQLのPOWER関数は、numeric_expressionを特定の数値の累乗にした結果を返します。

構文

以下は、POWER関数の構文を示しています。

POWER(numeric_expression,power)Code language: SQL (Structured Query Language) (sql)

引数

POWER関数は2つの引数を受け取ります。

numeric_expression
数値として評価される式です。

power

numeric_expressionを累乗するべき数です。powerは数値、または数値として評価される式です。

戻り値の型

POWER関数は、最初の引数(つまり、numeric_expressionの結果)と同じデータ型を持つ数値を返します。

次のステートメントは、最初の引数を返します。なぜなら、任意の数値を1の累乗にすると、その数値自身になるためです。

SELECT POWER(10,1);Code language: SQL (Structured Query Language) (sql)
 power
-------
    10
(1 row)Code language: SQL (Structured Query Language) (sql)

次の例は1を返します。なぜなら、任意の数値を0の累乗にすると1になるためです。

SELECT POWER(10,0);
Code language: SQL (Structured Query Language) (sql)
 power
-------
     1
(1 row)Code language: SQL (Structured Query Language) (sql)

次の例は、数値の2乗を返します。

SELECT POWER(10,2);
Code language: SQL (Structured Query Language) (sql)
 power
-------
   100
(1 row)Code language: SQL (Structured Query Language) (sql)

次のステートメントは、数値の3乗を返します。

SELECT POWER(10,3);Code language: SQL (Structured Query Language) (sql)
 power
-------
  1000
(1 row)Code language: SQL (Structured Query Language) (sql)

powerが分数の場合、POWER関数は対応する値の根を返します。例:1/2は平方根、1/3は立方根などです。

SELECT POWER(100,0.5);
Code language: SQL (Structured Query Language) (sql)
       power
--------------------
 10.00
(1 row)Code language: SQL (Structured Query Language) (sql)

powerが負の数の場合、POWER関数は、その数値を反対の正の累乗にした値の逆数を返します。次の例を参照してください。

SELECT POWER(100,-1);
Code language: SQL (Structured Query Language) (sql)
 power
-------
  0.01
(1 row)Code language: SQL (Structured Query Language) (sql)

備考

Microsoft SQL Serverなどのデータベースシステムでは、2番目の引数が負の数の場合、POWER関数はゼロ(0)を返します。

POWER関数の他に、MySQLとPostgreSQLはPOWER関数の同義語としてPOW関数を許容します。

このチュートリアルは役に立ちましたか?