このトピックでは、Hologres でサポートされている関数について説明し、これらの関数の使用例を示します。
PostgreSQL と互換性のある文字列関数の使用方法の詳細については、「Mathematical Functions and Operators」をご参照ください。
種類 | 関数 | 説明 |
一般的な数学関数 | 数値の絶対値を返します。 | |
数値の立方根を返します。 | ||
数値を最も近い整数に切り上げます。 | ||
数値を最も近い整数に切り上げます。 | ||
ラジアンをそれと同等の角度に変換します。 | ||
定数を数値のべき乗した結果を返します。 | ||
数値を最も近い整数に切り捨てます。 | ||
数値の自然対数を返します。 | ||
数値の底が 10 の対数を返します。 | ||
数値を数値 x で割った余りを返します。 | ||
定数 π の値を返します。 | ||
a の b 乗の結果を返します。 | ||
度単位の角度をラジアン単位の角度に変換します。 | ||
乱数を返します。 | ||
数値を最も近い整数、または小数点以下の桁数が固定された最も近い数値に丸めます。 | ||
数値の符号を返します。 | ||
数値の平方根を返します。 | ||
数値を整数、または小数点以下の桁数が固定された数値に切り捨てます。 | ||
データセットを等幅のバケットに分割し、オペランドが属するバケット番号を返します。 | ||
三角関数 | 数値の逆余弦を返します。 | |
数値の逆正弦を返します。 | ||
数値の逆正接を返します。 | ||
| ||
数値の余弦を返します。 | ||
数値の余接を返します。 | ||
数値の正弦を返します。 | ||
数値の正接を返します。 |
一般的な数学関数
ABS
説明:数値の絶対値を返します。
ABS(num)
パラメーター
num
:必須。パラメーター値の型は、INT、BIGINT、REAL、DOUBLE PRECISION、NUMERIC、または DECIMAL にすることができます。戻り値
INT、BIGINT、REAL、DOUBLE PRECISION、NUMERIC、または DECIMAL 型の値が返されます。
例
SELECT ABS(-17.4);
次の結果が返されます。
abs ----- 17.4
CBRT
説明:数値の立方根を返します。
CBRT(num)
パラメーター
num
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT CBRT(9);
次の結果が返されます。
cbrt ----------------- 2.0800838230519
CEIL
説明:数値を最も近い整数に切り上げます。
CEIL(num)
パラメーター
num
:必須。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。戻り値
DOUBLE PRECISION または NUMERIC 型の値が返されます。
例
SELECT CEIL(9.2);
次の結果が返されます。
ceil ------ 10
CEILING
説明:数値を最も近い整数に切り上げます。
CEILING(num)
パラメーター
num
:必須。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。戻り値
DOUBLE PRECISION または NUMERIC 型の値が返されます。
例
SELECT CEILING(9.2);
次の結果が返されます。
ceil ------ 10
DEGREES
説明:ラジアンをそれと同等の角度に変換します。
DEGREES(num)
パラメーター
num
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT DEGREES(3.2);
次の結果が返されます。
degrees -------------- 183.34649444186343
EXP
説明:定数を数値のべき乗した結果を返します。
EXP(num)
パラメーター
num
:必須。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。戻り値
DOUBLE PRECISION または NUMERIC 型の値が返されます。
例
SELECT EXP(1);
次の結果が返されます。
exp ---------------- 2.718281828459045
FLOOR
説明:数値を最も近い整数に切り捨てます。
FLOOR(num)
パラメーター
num
:必須。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。戻り値
DOUBLE PRECISION または NUMERIC 型の値が返されます。
例
SELECT FLOOR(3.8);
次の結果が返されます。
floor ------ 3
LN
説明:数値の自然対数を返します。
LN(num)
パラメーター
num
:必須。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。戻り値
DOUBLE PRECISION または NUMERIC 型の値が返されます。
例
SELECT LN(3.8);
次の結果が返されます。
ln ---------------- 1.3350010667323401
LOG
説明:数値の底が 10 の対数を返します。
LOG(num)
パラメーター
num
:必須。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。戻り値
DOUBLE PRECISION または NUMERIC 型の値が返されます。
例
SELECT LOG(100);
次の結果が返されます。
log ----- 2
MOD
説明:数値を数値 x で割った余りを返します。
MOD(num, x)
パラメーター
num
:必須。パラメーター値の型は NUMERIC である必要があります。x
:必須。パラメーター値の型は NUMERIC である必要があります。
戻り値
NUMERIC 型の値が返されます。
例
SELECT MOD(9,4);
次の結果が返されます。
mod ----- 1
PI
説明:定数 π の値を返します。
PI()
戻り値
定数 π の値が返されます。
例
SELECT PI();
次の結果が返されます。
pi ------------------ 3.14159265358979
POWER
説明:a の b 乗の結果を返します。
POWER(a, b)
パラメーター
a
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。b
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。
戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT POWER(9, 3);
次の結果が返されます。
power ------- 729
RADIANS
説明:度単位の角度をラジアン単位の角度に変換します。
RADIANS(num)
パラメーター
num:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。
戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT RADIANS(45);
次の結果が返されます。
radians ------------------- 0.785398163397448
RANDOM
説明:乱数を返します。
RANDOM()
戻り値
DOUBLE PRECISION 型の乱数が返されます。有効な値:
[0.0, 1.0)
。例
SELECT RANDOM();
次の結果が返されます。
random ------------------- 0.377819478977472
ROUND
説明
数値を最も近い整数に丸めます。
ROUND(num)
数値を、小数点以下 s 桁で最も近い数値に丸めます。
ROUND(num1, s)
パラメーター
num
: 必須。入力パラメーターが 1 つの場合、パラメーター値は DOUBLE PRECISION 型または NUMERIC 型です。入力パラメーターが 2 つの場合、NUMERIC 値のみがサポートされます。s
: オプション。パラメーター値は INT 型である必要があります。
戻り値
入力パラメーター
num
と同じデータ型の値が返されます。例
SELECT ROUND(42.4);
次の結果が返されます。
round ------- 42
SIGN
説明:数値の符号を返します。
SIGN(num)
パラメーター
num:必須。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。
戻り値
パラメーター値が 0 より大きい場合は値 1 が返されます。パラメーター値が 0 未満の場合は値 -1 が返されます。パラメーター値が 0 の場合は値 0 が返されます。
例
SELECT SIGN(-8.4);
次の結果が返されます。
sign ------ -1
SQRT
説明:数値の平方根を返します。
SQRT(num)
パラメーター
num:必須。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。
戻り値
DOUBLE PRECISION または NUMERIC 型の値が返されます。
例
SELECT SQRT(2);
次の結果が返されます。
sqrt ----------------- 1.4142135623731
TRUNC
説明
数値を整数に切り捨てます。
TRUNC(num)
数値を、小数点以下 s 桁の数値に切り捨てます。
TRUNC(num, s)
パラメーター
num
:必須。パラメーター値の型は NUMERIC である必要があります。s
:オプション。パラメーター値の型は INT である必要があります。
戻り値
NUMERIC 型の値が返されます。
例
例 1:
SELECT TRUNC(2.456);
次の結果が返されます。
trunc ------- 2
例 2:
SELECT TRUNC(2.4564, 2);
次の結果が返されます。
trunc ------- 2.45
WIDTH_BUCKET
説明:データセットを等幅のバケットに分割し、オペランドが属するバケット番号を返します。
WIDTH_BUCKET(value, start, end, num_buckets)
パラメーター
value
:必須。オペランドが属するバケット番号。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。start
:必須。バケットの開始値。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。end
:必須。バケットの終了値。パラメーター値の型は、DOUBLE PRECISION または NUMERIC にすることができます。num_buckets
:必須。分割されるバケット(間隔)の数。パラメーター値の型は INT である必要があります。戻り値
INT 型の値が返されます。
例
-- 0 から 100 までのデータは 5 つのバケットに分類されます。45 は、開始値が 40、終了値が 60 の 3 番目のバケットに分類されます。 SELECT WIDTH_BUCKET(45, 0, 100, 5);
次の結果が返されます。
width_bucket -------------- 3
三角関数
ACOS
説明:数値の逆余弦を返します。
ACOS(num)
パラメーター
num
:必須。パラメーター値の型は NUMERIC である必要があります。有効な値:[-1,1]
。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT ACOS(-1);
次の結果が返されます。
acos ------------------ 3.14159265358979
ASIN
説明:数値の逆正弦を返します。
ASIN(num)
パラメーター
num
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。有効な値:[-1,1]
。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT ASIN(-1);
次の結果が返されます。
asin ------------------ -1.5707963267949
ATAN
説明:数値の逆正接を返します。
ATAN(num)
パラメーター
num
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT ATAN(2);
次の結果が返されます。
atan ------------------ 1.10714871779409
ATAN2
説明:
y を x で除算した
値のアークタンジェントを返します。ATAN2(y, x);
パラメーター
y
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。x
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。
戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT ATAN2(4, 2);
次の結果が返されます。
atan2 ------------------ 1.10714871779409
COS
説明:数値の余弦を返します。
COS(num)
パラメーター
num
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT COS(2);
次の結果が返されます。
cos -------------------- -0.416146836547142
COT
説明:数値の余接を返します。
COT(num)
パラメーター
num
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT COT(2);
次の結果が返されます。
cot -------------------- -0.457657554360286
SIN
説明:数値の正弦を返します。
SIN(num)
パラメーター
num
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT SIN(2);
次の結果が返されます。
sin ------------------- 0.909297426825682
TAN
説明:数値の正接を返します。
TAN(num)
パラメーター
num
:必須。パラメーター値の型は DOUBLE PRECISION である必要があります。戻り値
DOUBLE PRECISION 型の値が返されます。
例
SELECT TAN(2);
次の結果が返されます。
tan ------------------- -2.18503986326152