SQL道場 算術関数 POW/POWER関数

ギフト・ポイントGet!
SQL SQL
この記事は約2分で読めます。

SQLでべき乗(累乗)した値を取得するPOW/POWER関数について記載しています。

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

スポンサーリンク

POW/POWER関数の文法

SELECT POW(数値1, 数値2) FROM テーブル
SELECT POWER(数値1, 数値2) FROM テーブル

引数 数値1 数値型 数値(任意の数)
桁数2 数値型 数値(任意の数)
返値 数値型 数値1を数値2の値で乗じた結果。数値1

SQLServer

入力種類 戻り値の型
float,real float
decimal(p,s) decimal(38, s)
int、smallint、tinyint int
bigint bigint
money、 smallmoney money
bit、char、nchar、varchar、nvarchar float

POW/POWER関数は数値1を数値2で乗じた結果を戻します。POWER関数を使いPOWER(数値1,数値2)と指定しても同じ結果になります。MySQLはPOW/POWERどちらの関数も使用することができます。

SQLServer仕様

結果が戻り値の型に一致しない合、算術オーバーフロー エラーが発生します。

実行例

MySQLの実行例

/* MySQL べき乗のサンプル */
SELECT 
	pow(2,2) as POW_value1  
    ,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にマイナスの値を指定 */
    ,power(6,-3) as POW_value6  /* 数値2にマイナスの値を指定 */
;
MySQLのべき乗(POWER)サンプル実行結果

数値2にマイナス(負)の値を指定した場合、浮動小数点の型で返されます。

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にマイナスの値を指定 */
;
SQLServerのべき乗(POWER)サンプル実行結果

数値2にマイナス(負)の値を指定した場合、0が返されます。

タイトルとURLをコピーしました