PPL 数学関数 - Amazon OpenSearch Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

PPL 数学関数

注記

このPPL関数をサポートする AWS データソース統合を確認するには、「」を参照してください関数

ABS

使用法: x の絶対値をABS(x) 計算します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: INTEGER/LONG/FLOAT/DOUBLE

例:

os> source=people | eval `ABS(-1)` = ABS(-1) | fields `ABS(-1)` fetched rows / total rows = 1/1 +-----------+ | ABS(-1) | |-----------| | 1 | +-----------+

ACOS

使用法: x のアークコサインをACOS(x)計算します。NULL x が -1~1 の範囲にない場合、 を返します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `ACOS(0)` = ACOS(0) | fields `ACOS(0)` fetched rows / total rows = 1/1 +--------------------+ | ACOS(0) | |--------------------| | 1.5707963267948966 | +--------------------+

ASIN

使用法: x のアークサインをasin(x)計算します。NULL x が -1~1 の範囲にない場合、 を返します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `ASIN(0)` = ASIN(0) | fields `ASIN(0)` fetched rows / total rows = 1/1 +-----------+ | ASIN(0) | |-----------| | 0.0 | +-----------+

ATAN

使用法: は x のアークタンジェントATAN(x)を計算します。 は y/x のアークタンジェントをatan(y, x)計算します。ただし、両方の引数の符号によって結果の四分円が決まります。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `ATAN(2)` = ATAN(2), `ATAN(2, 3)` = ATAN(2, 3) | fields `ATAN(2)`, `ATAN(2, 3)` fetched rows / total rows = 1/1 +--------------------+--------------------+ | ATAN(2) | ATAN(2, 3) | |--------------------+--------------------| | 1.1071487177940904 | 0.5880026035475675 | +--------------------+--------------------+

ATAN2

使用法: は y/x のアークタンジェントをATAN2(y, x)計算します。ただし、両方の引数の符号によって結果の四分円が決まります。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `ATAN2(2, 3)` = ATAN2(2, 3) | fields `ATAN2(2, 3)` fetched rows / total rows = 1/1 +--------------------+ | ATAN2(2, 3) | |--------------------| | 0.5880026035475675 | +--------------------+

CBRT

使用法: 数値の立方根をCBRT計算します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE:

INTEGER/LONG/FLOAT/DOUBLE -> DOUBLE

例:

opensearchsql> source=location | eval `CBRT(8)` = CBRT(8), `CBRT(9.261)` = CBRT(9.261), `CBRT(-27)` = CBRT(-27) | fields `CBRT(8)`, `CBRT(9.261)`, `CBRT(-27)`; fetched rows / total rows = 2/2 +-----------+---------------+-------------+ | CBRT(8) | CBRT(9.261) | CBRT(-27) | |-----------+---------------+-------------| | 2.0 | 2.1 | -3.0 | | 2.0 | 2.1 | -3.0 | +-----------+---------------+-------------+

CEIL

使用法: CEILING関数のエイリアス。 は値 T の上限CEILING(T)を取ります。

制限: 754 ダブルタイプが格納時に 10 IEEE 進数を表示するCEILING場合にのみ、期待どおりに動作します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: LONG

例:

os> source=people | eval `CEILING(0)` = CEILING(0), `CEILING(50.00005)` = CEILING(50.00005), `CEILING(-50.00005)` = CEILING(-50.00005) | fields `CEILING(0)`, `CEILING(50.00005)`, `CEILING(-50.00005)` fetched rows / total rows = 1/1 +--------------+---------------------+----------------------+ | CEILING(0) | CEILING(50.00005) | CEILING(-50.00005) | |--------------+---------------------+----------------------| | 0 | 51 | -50 | +--------------+---------------------+----------------------+ os> source=people | eval `CEILING(3147483647.12345)` = CEILING(3147483647.12345), `CEILING(113147483647.12345)` = CEILING(113147483647.12345), `CEILING(3147483647.00001)` = CEILING(3147483647.00001) | fields `CEILING(3147483647.12345)`, `CEILING(113147483647.12345)`, `CEILING(3147483647.00001)` fetched rows / total rows = 1/1 +-----------------------------+-------------------------------+-----------------------------+ | CEILING(3147483647.12345) | CEILING(113147483647.12345) | CEILING(3147483647.00001) | |-----------------------------+-------------------------------+-----------------------------| | 3147483648 | 113147483648 | 3147483648 | +-----------------------------+-------------------------------+-----------------------------+

CONV

使用法: は x の数をベースから b ベースCONV(x, a, b)に変換します。

引数タイプ: x: STRING、a: INTEGER、b: INTEGER

戻り値タイプ: STRING

例:

os> source=people | eval `CONV('12', 10, 16)` = CONV('12', 10, 16), `CONV('2C', 16, 10)` = CONV('2C', 16, 10), `CONV(12, 10, 2)` = CONV(12, 10, 2), `CONV(1111, 2, 10)` = CONV(1111, 2, 10) | fields `CONV('12', 10, 16)`, `CONV('2C', 16, 10)`, `CONV(12, 10, 2)`, `CONV(1111, 2, 10)` fetched rows / total rows = 1/1 +----------------------+----------------------+-------------------+---------------------+ | CONV('12', 10, 16) | CONV('2C', 16, 10) | CONV(12, 10, 2) | CONV(1111, 2, 10) | |----------------------+----------------------+-------------------+---------------------| | c | 44 | 1100 | 15 | +----------------------+----------------------+-------------------+---------------------+

COS

使用法: は x のコサインをCOS(x)計算します。x はラジアンで表されます。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `COS(0)` = COS(0) | fields `COS(0)` fetched rows / total rows = 1/1 +----------+ | COS(0) | |----------| | 1.0 | +----------+

COT

使用法: x の接線をCOT(x)計算します。x が 0 に等しい場合、エラーを返します out-of-range。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `COT(1)` = COT(1) | fields `COT(1)` fetched rows / total rows = 1/1 +--------------------+ | COT(1) | |--------------------| | 0.6420926159343306 | +--------------------+

CRC32

使用法: 巡回冗長チェック値をCRC32計算し、32 ビットの符号なし値を返します。

引数タイプ: STRING

戻り値タイプ: LONG

例:

os> source=people | eval `CRC32('MySQL')` = CRC32('MySQL') | fields `CRC32('MySQL')` fetched rows / total rows = 1/1 +------------------+ | CRC32('MySQL') | |------------------| | 3259397556 | +------------------+

DEGREES

使用法: x をラジアンから度DEGREES(x)数に変換します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `DEGREES(1.57)` = DEGREES(1.57) | fields `DEGREES(1.57)` fetched rows / total rows = 1/1 +-------------------+ | DEGREES(1.57) | |-------------------| | 89.95437383553924 | +-------------------+

E

使用法: は Euler の数値E()を返します。

戻り値タイプ: DOUBLE

例:

os> source=people | eval `E()` = E() | fields `E()` fetched rows / total rows = 1/1 +-------------------+ | E() | |-------------------| | 2.718281828459045 | +-------------------+

EXP

使用法: e を x の累乗に戻EXP(x)します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `EXP(2)` = EXP(2) | fields `EXP(2)` fetched rows / total rows = 1/1 +------------------+ | EXP(2) | |------------------| | 7.38905609893065 | +------------------+

FLOOR

使用法: は値 T の下限FLOOR(T)を取ります。

制限: 754 ダブルタイプが格納時に 10 IEEE 進数を表示するFLOOR場合にのみ、期待どおりに動作します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: LONG

例:

os> source=people | eval `FLOOR(0)` = FLOOR(0), `FLOOR(50.00005)` = FLOOR(50.00005), `FLOOR(-50.00005)` = FLOOR(-50.00005) | fields `FLOOR(0)`, `FLOOR(50.00005)`, `FLOOR(-50.00005)` fetched rows / total rows = 1/1 +------------+-------------------+--------------------+ | FLOOR(0) | FLOOR(50.00005) | FLOOR(-50.00005) | |------------+-------------------+--------------------| | 0 | 50 | -51 | +------------+-------------------+--------------------+ os> source=people | eval `FLOOR(3147483647.12345)` = FLOOR(3147483647.12345), `FLOOR(113147483647.12345)` = FLOOR(113147483647.12345), `FLOOR(3147483647.00001)` = FLOOR(3147483647.00001) | fields `FLOOR(3147483647.12345)`, `FLOOR(113147483647.12345)`, `FLOOR(3147483647.00001)` fetched rows / total rows = 1/1 +---------------------------+-----------------------------+---------------------------+ | FLOOR(3147483647.12345) | FLOOR(113147483647.12345) | FLOOR(3147483647.00001) | |---------------------------+-----------------------------+---------------------------| | 3147483647 | 113147483647 | 3147483647 | +---------------------------+-----------------------------+---------------------------+ os> source=people | eval `FLOOR(282474973688888.022)` = FLOOR(282474973688888.022), `FLOOR(9223372036854775807.022)` = FLOOR(9223372036854775807.022), `FLOOR(9223372036854775807.0000001)` = FLOOR(9223372036854775807.0000001) | fields `FLOOR(282474973688888.022)`, `FLOOR(9223372036854775807.022)`, `FLOOR(9223372036854775807.0000001)` fetched rows / total rows = 1/1 +------------------------------+----------------------------------+--------------------------------------+ | FLOOR(282474973688888.022) | FLOOR(9223372036854775807.022) | FLOOR(9223372036854775807.0000001) | |------------------------------+----------------------------------+--------------------------------------| | 282474973688888 | 9223372036854775807 | 9223372036854775807 | +------------------------------+----------------------------------+--------------------------------------+

LN

使用法: は x の自然対数LN(x)を返します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `LN(2)` = LN(2) | fields `LN(2)` fetched rows / total rows = 1/1 +--------------------+ | LN(2) | |--------------------| | 0.6931471805599453 | +--------------------+

LOG

使用法: は、x の基になる x の自然対数LOG(x)を返します。log(B, x) は log(x)/log(B) と同等です。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `LOG(2)` = LOG(2), `LOG(2, 8)` = LOG(2, 8) | fields `LOG(2)`, `LOG(2, 8)` fetched rows / total rows = 1/1 +--------------------+-------------+ | LOG(2) | LOG(2, 8) | |--------------------+-------------| | 0.6931471805599453 | 3.0 | +--------------------+-------------+

LOG2

使用法: LOG2(x)log(x)/ に相当しますlog(2)

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `LOG2(8)` = LOG2(8) | fields `LOG2(8)` fetched rows / total rows = 1/1 +-----------+ | LOG2(8) | |-----------| | 3.0 | +-----------+

LOG10

使用法: LOG10(x)log(x)/ に相当しますlog(10)

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `LOG10(100)` = LOG10(100) | fields `LOG10(100)` fetched rows / total rows = 1/1 +--------------+ | LOG10(100) | |--------------| | 2.0 | +--------------+

MOD

使用法: n の数値の残りを m で割ってMOD(n, m)計算します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値型: m がゼロ以外の値の場合、n 型と m 型の間でより広い型。m が 0 に等しい場合、 は を返しますNULL。

例:

os> source=people | eval `MOD(3, 2)` = MOD(3, 2), `MOD(3.1, 2)` = MOD(3.1, 2) | fields `MOD(3, 2)`, `MOD(3.1, 2)` fetched rows / total rows = 1/1 +-------------+---------------+ | MOD(3, 2) | MOD(3.1, 2) | |-------------+---------------| | 1 | 1.1 | +-------------+---------------+

PI

使用法: 定数 pi PI() を返します。

戻り値タイプ: DOUBLE

例:

os> source=people | eval `PI()` = PI() | fields `PI()` fetched rows / total rows = 1/1 +-------------------+ | PI() | |-------------------| | 3.141592653589793 | +-------------------+

POW

使用法: y の累乗に引き上げられた x の値をPOW(x, y)計算します。不正な入力はNULL結果を返します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

シノニム: POWER(_, _)

例:

os> source=people | eval `POW(3, 2)` = POW(3, 2), `POW(-3, 2)` = POW(-3, 2), `POW(3, -2)` = POW(3, -2) | fields `POW(3, 2)`, `POW(-3, 2)`, `POW(3, -2)` fetched rows / total rows = 1/1 +-------------+--------------+--------------------+ | POW(3, 2) | POW(-3, 2) | POW(3, -2) | |-------------+--------------+--------------------| | 9.0 | 9.0 | 0.1111111111111111 | +-------------+--------------+--------------------+

POWER

使用法: y の累乗に引き上げられた x の値をPOWER(x, y)計算します。不正な入力はNULL結果を返します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

シノニム: POW(_, _)

例:

os> source=people | eval `POWER(3, 2)` = POWER(3, 2), `POWER(-3, 2)` = POWER(-3, 2), `POWER(3, -2)` = POWER(3, -2) | fields `POWER(3, 2)`, `POWER(-3, 2)`, `POWER(3, -2)` fetched rows / total rows = 1/1 +---------------+----------------+--------------------+ | POWER(3, 2) | POWER(-3, 2) | POWER(3, -2) | |---------------+----------------+--------------------| | 9.0 | 9.0 | 0.1111111111111111 | +---------------+----------------+--------------------+

RADIANS

使用法: x を度からラジアンRADIANS(x)に変換します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `RADIANS(90)` = RADIANS(90) | fields `RADIANS(90)` fetched rows / total rows = 1/1 +--------------------+ | RADIANS(90) | |--------------------| | 1.5707963267948966 | +--------------------+

RAND

使用法: RAND()/RAND(N) は、範囲 0 <= 値 < 1.0 のランダム浮動小数点値を返します。整数 N を指定すると、関数は実行前にシードを初期化します。この動作の 1 つの意味は、同じ引数 N を持つ が毎回同じ値をrand(N)返し、反復可能な列値のシーケンスを生成することです。

引数タイプ: INTEGER

戻り値タイプ: FLOAT

例:

os> source=people | eval `RAND(3)` = RAND(3) | fields `RAND(3)` fetched rows / total rows = 1/1 +------------+ | RAND(3) | |------------| | 0.73105735 | +------------+

ROUND

使用法: は、引数 x を小数点以下第 3 位にROUND(x, d)四捨五入します。d を指定しない場合、デフォルトは 0 です。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

リターンタイプマップ

  • (INTEGER/LONG [,INTEGER]) -> LONG

  • (FLOAT/DOUBLE [,INTEGER]) -> LONG

例:

os> source=people | eval `ROUND(12.34)` = ROUND(12.34), `ROUND(12.34, 1)` = ROUND(12.34, 1), `ROUND(12.34, -1)` = ROUND(12.34, -1), `ROUND(12, 1)` = ROUND(12, 1) | fields `ROUND(12.34)`, `ROUND(12.34, 1)`, `ROUND(12.34, -1)`, `ROUND(12, 1)` fetched rows / total rows = 1/1 +----------------+-------------------+--------------------+----------------+ | ROUND(12.34) | ROUND(12.34, 1) | ROUND(12.34, -1) | ROUND(12, 1) | |----------------+-------------------+--------------------+----------------| | 12.0 | 12.3 | 10.0 | 12 | +----------------+-------------------+--------------------+----------------+

SIGN

使用法: は、数値が負、ゼロ、正のいずれであるかに応じて、引数の符号を -1、0、または 1 としてSIGN返します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: INTEGER

例:

os> source=people | eval `SIGN(1)` = SIGN(1), `SIGN(0)` = SIGN(0), `SIGN(-1.1)` = SIGN(-1.1) | fields `SIGN(1)`, `SIGN(0)`, `SIGN(-1.1)` fetched rows / total rows = 1/1 +-----------+-----------+--------------+ | SIGN(1) | SIGN(0) | SIGN(-1.1) | |-----------+-----------+--------------| | 1 | 0 | -1 | +-----------+-----------+--------------+

SIN

使用法: x のサインをsin(x)計算します。x はラジアンで表されます。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

戻り値タイプ: DOUBLE

例:

os> source=people | eval `SIN(0)` = SIN(0) | fields `SIN(0)` fetched rows / total rows = 1/1 +----------+ | SIN(0) | |----------| | 0.0 | +----------+

SQRT

使用法: 負でない数値の平方根をSQRT計算します。

引数タイプ: INTEGER/LONG/FLOAT/DOUBLE

リターンタイプマップ:

  • (非負) INTEGER/LONG/FLOAT/DOUBLE -> DOUBLE

  • (負) INTEGER/LONG/FLOAT/DOUBLE -> NULL

例:

os> source=people | eval `SQRT(4)` = SQRT(4), `SQRT(4.41)` = SQRT(4.41) | fields `SQRT(4)`, `SQRT(4.41)` fetched rows / total rows = 1/1 +-----------+--------------+ | SQRT(4) | SQRT(4.41) | |-----------+--------------| | 2.0 | 2.1 | +-----------+--------------+