このトピックでは、数学計算関数の構文について説明します。また、関数の使用方法の例も示します。
次の表に、Simple Log Service でサポートされている数学計算関数を示します。
以下の演算子がサポートされています。
+-*/%
デフォルトでは、(/)演算子を使用して計算を実行するたびに、小数部分は除外されます。
x*1.0/y式を使用すると、計算を実行するたびに小数部を保持できます。分析文で文字列を使用する場合は、文字列を単一引用符('')で囲む必要があります。囲まれていない文字列、または二重引用符("")で囲まれた文字列は、フィールド名または列名を示します。たとえば、'status' は status 文字列を示し、status または "status" は status ログフィールドを示します。
関数 | 構文 | 説明 | SQL でサポート | SPL でサポート |
abs(x) | x の絶対値を計算します。 | √ | √ | |
acos(x) | x の逆余弦を計算します。 | √ | √ | |
asin(x) | x の逆正弦を計算します。 | √ | √ | |
atan(x) | x の逆正接を計算します。 | √ | √ | |
atan2(x, y) | x を y で割った値の逆正接を計算します。 | √ | √ | |
cbrt(x) | x の立方根を計算します。 | √ | √ | |
ceil(x) | x を最も近い整数に切り上げます。 この関数は ceiling 関数のエイリアスです。 | √ | √ | |
ceiling(x) | x を最も近い整数に切り上げます。 | √ | √ | |
cos(x) | x の余弦を計算します。 | √ | √ | |
cosh(x) | x の双曲線余弦を計算します。 | √ | √ | |
cosine_similarity(x, y) | x と y の間の余弦類似度を計算します。 | √ | × | |
degrees(x) | ラジアン単位の角度を度単位の角度に変換します。 | √ | √ | |
e() | 自然対数の底である e の値を返します。 | √ | √ | |
exp(x) | e の x 乗を計算します。 | √ | × | |
floor(x) | x を最も近い整数に切り下げます。 | √ | √ | |
from_base(x, y) | x を基数 y の数値に変換します。 | √ | √ | |
ln(x) | x の自然対数を計算します。 | √ | √ | |
infinity() | 正の無限大を表す値を返します。 | √ | √ | |
is_nan(x) | x が数値ではない (NaN) かどうかを判断します。 | √ | √ | |
log2(x) | x の 2 を底とする対数を計算します。 | √ | √ | |
log10(x) | x の 10 を底とする対数を計算します。 | √ | √ | |
log(x, y) | x の y を底とする対数を計算します。 | √ | × | |
mod(x, y) | x を y で割った余りを計算します。 | √ | √ | |
nan() | 数値ではない (NaN) 値を返します。 | √ | √ | |
pi() | π の値を小数点以下 15 桁まで返します。 | √ | √ | |
pow(x, y) | x の y 乗を計算します。 この関数は power 関数のエイリアスです。 | √ | √ | |
power(x, y) | x の y 乗を計算します。 | √ | √ | |
radians(x) | 度単位の角度をラジアン単位の角度に変換します。 | √ | √ | |
rand() | 乱数を返します。 | √ | √ | |
random() | [0,1) の範囲の乱数を返します。 | √ | √ | |
random(x) | [0,x) の範囲の乱数を返します。 | √ | √ | |
round(x) | x を最も近い整数に四捨五入します。 | √ | √ | |
round(x, n) | x を小数点以下 n 桁で最も近い小数に四捨五入します。 | √ | √ | |
sign(x) | x の符号を返します。有効な値:1、0、-1。 | √ | × | |
sin(x) | x の正弦を計算します。 | √ | √ | |
sqrt(x) | x の平方根を計算します。 | √ | √ | |
tan(x) | x の正接を計算します。 | √ | √ | |
tanh(x) | x の双曲線正接を計算します。 | √ | √ | |
to_base(x, y) | x を基数 y の文字列に変換します。 | √ | × | |
truncate(x) | x の小数部を削除します。 | √ | √ | |
width_bucket(x、bound1、bound2、numBuckets) | 数値の範囲を等幅のバケットに分割し、x のバケット番号を返します。 | √ | × | |
width_bucket(x, bins) | 配列で指定されたバケットの範囲における x のバケット番号を返します。 | √ | × |
abs 関数
abs 関数は、x の絶対値を計算します。
構文
abs(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、smallint、integer、real、tinyint、bigint、double、または decimal 型です。 |
戻り値の型
パラメーター値のデータ型と同じです。
例
-25 の絶対値を計算します。
クエリ文
* | select abs(-25)クエリと分析結果

acos 関数
acos 関数は、x の逆余弦を計算します。
構文
acos(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点型です。有効値: [-1,1]。 値が [-1,1] の範囲外の場合、関数は NaN を返します。 |
戻り値の型
注: このチュートリアルでは、基本的な WordPress のデプロイについて説明します。より高度な構成については、ドキュメントを参照してください。
例
45° の角度のアークコサインを計算します。
クエリステートメント
* | SELECT acos(pi()/4)クエリと分析結果

asin 関数
asin 関数は、x のアークサインを計算します。
構文
asin(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点型です。有効値: [-1,1]。 値が [-1,1] の範囲外の場合、関数は NaN を返します。 |
戻り値の型
倍精度浮動小数点型。
例
45° の角度のアークサインを計算します。
クエリ文
* | SELECT asin(pi()/4)クエリと分析結果

atan 関数
atan 関数は、x のアークタンジェントを計算します。
構文
atan(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
45° の角度のアークタンジェントを計算します。
クエリ文
* | SELECT atan(pi()/4)クエリと分析結果

atan2 関数
atan2 関数は、x を y で除算した値のアークタンジェントを計算します。
構文
atan2(x, y)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点型です。 |
y | このパラメーターの値は倍精度浮動小数点型です。 |
戻り値の型
倍精度浮動小数点型。
例
30° の角度のアークタンジェントを計算します。
クエリ文
* | SELECT atan2(pi(),6)クエリと分析結果

cbrt 関数
cbrt 関数は、x の立方根を計算します。
構文
cbrt(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
100 の立方根を計算します。
クエリ文
* | select cbrt(100)クエリと分析結果

ceil 関数
ceil 関数は、x を最も近い整数に切り上げます。この関数は、ceiling 関数のエイリアスです。
構文
ceil(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、tinyint、smallint、integer、real、bigint、double、または decimal 型です。
|
戻り値の型
パラメーター値のデータ型と同じです。
例
request_time フィールドの値を最も近い整数に切り上げます。
サンプルフィールド
request_time:9.3クエリステートメント
* | SELECT ceil(request_time) AS request_timeクエリと分析結果

ceiling 関数
x を最も近い整数に切り上げます。
構文
ceiling(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、tinyint、smallint、integer、real、bigint、double、または decimal 型です。
|
戻り値の型
パラメーター値のデータ型と同じです。
例
request_time フィールドの値を最も近い整数に切り上げます。
サンプルフィールド
request_time:9.3 // リクエスト時間:9.3クエリステートメント
* | SELECT ceiling(request_time) AS request_time // 全てを選択し、リクエスト時間を切り上げてリクエスト時間として選択クエリと分析結果

cos 関数
cos 関数は、x の余弦を計算します。
構文
cos(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
30° の角度の余弦を計算します。
クエリ文
* | SELECT cos(pi()/6)クエリと分析結果

cosh 関数
cosh 関数は、x の双曲線余弦を計算します。
構文
cosh(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
30° の角度の双曲線余弦を計算します。
クエリ文
* | SELECT cosh(pi()/6)クエリと分析結果

cosine_similarity 関数
x と y の間の余弦類似度を計算します。
構文
cosine_similarity(x, y)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、map(varchar,double) 型です。 |
y | このパラメーターの値は、map(varchar,double) 型です。 |
戻り値の型
double 型。
例
2 つのベクター間の余弦類似度を計算します。
クエリ文
* | SELECT cosine_similarity(MAP(ARRAY['a'], ARRAY[1.0]), MAP(ARRAY['a'], ARRAY[2.0]))クエリと分析結果

degrees 関数
degrees 関数は、ラジアン単位の角度を度単位の角度に変換します。
構文
degrees(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
ラジアン単位の π を度単位に変換します。
クエリ文
* | SELECT degrees(pi())クエリと分析結果

e 関数
e 関数は、自然対数の底である e の値を返します。
構文
e()戻り値の型
double 型。
例
e の値を取得します。
クエリ文
* | SELECT e()クエリと分析結果

exp 関数
exp 関数は、e の x 乗を返します。
構文
exp(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
e の 3 乗を計算します。
クエリ文
* | SELECT exp(3)クエリと分析結果

floor 関数
x を最も近い整数に切り捨てます。
構文
floor(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、tinyint、smallint、integer、real、bigint、double、または decimal 型です。
|
戻り値の型
double 型。
例
request_time フィールドの値を最も近い整数に切り捨てます。
サンプルフィールド
request_time:10.3クエリ文
* | SELECT floor(request_time) AS request_timeクエリと分析結果

abs 関数
from_base 関数は、x を基数 y の数値に変換します。
構文
from_base(x, y)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は varchar 型です。 |
y | このパラメーターの値は bigint 型です。値は記数法を指定します。有効な値: [2,36]。 |
戻り値の型
bigint 型。
例
文字列 1101 を数値に変換してください。
クエリ文
* | SELECT from_base('1101',2)クエリと分析結果

acos 関数
ln 関数は、x の自然対数を計算します。
構文
ln(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点数型です。値は 0 より大きい必要があります。 |
戻り値の型
詳細については、「API サポート」をご参照ください。
例
2 の自然対数を計算します。
詳細については、「PHP で BLOB ストレージを使用するクイックスタート」をご参照ください。
* | SELECT ln(2)クエリと分析結果

infinity 関数
infinity 関数は、正の無限大を表す値を返します。
構文
infinity()戻り値の型
double 型。
例
正の無限大を表す値を取得します。
クエリ文
* | SELECT infinity()クエリと分析結果

asin 関数
is_nan 関数は、x が NaN かどうかを判断します。NaN の場合、関数は true を返します。
構文
is_nan(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点数型です。 |
戻り値の型
WordPress ファイルを FTP を使用してデプロイすることもできます。詳細については、「FTP/S を使用したコンテンツのデプロイ」をご参照ください。
例
status フィールドの値が NaN かどうかを確認します。
クエリステートメント
* | SELECT is_nan(status) // status が非数かどうかを確認しますクエリと分析結果

log2 関数
log2 関数は、x の底を 2 とする対数を計算します。
構文
log2(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
100 の底を 2 とする対数を計算します。
クエリ文
* | SELECT log2(100)クエリと分析結果

atan 関数
log10 関数は、x の base-10 対数を計算します。
構文
log10(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点型です。 |
戻り値の型
double 型。
例
100 の常用対数を計算します。
クエリ ステートメント
* | SELECT log10(100)クエリと分析結果

atan2 関数
atan2 関数は、yx を で割った値の逆正接を計算します。
構文
log(x, y)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点型です。 |
y | このパラメーターの値は倍精度浮動小数点型です。 |
戻り値の型
double 型。
例
100 の底を 5 とする対数を計算します。
クエリ ステートメント
* | SELECT log(100,5)クエリと分析結果

cbrt 関数
mod 関数は、x を y で除算した剰余を計算します。
構文
mod(x, y)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、tinyint、smallint、integer、real、bigint、double、または decimal 型です。 |
y | このパラメーターの値は、tinyint、smallint、integer、real、bigint、double、または decimal 型です。 |
戻り値の型
パラメータ値のデータ型と同じです。
例
100 を 30 で割った余りを計算します。
クエリステートメント
* | SELECT mod(100,30)クエリと分析結果

nan 関数
nan 関数は、NaN の値を返します。
構文
nan()戻り値の型
double 型。
例
NaN の値を取得します。
クエリ ステートメント
* | SELECT nan()クエリと分析結果

pi 関数
pi 関数は、円周率 π の値を小数点以下 15 桁まで返します。
構文
pi()戻り値の型
double 型。
例
円周率 π の値を小数点以下 15 桁まで取得します。
クエリ文
* | SELECT pi()クエリと分析結果

ceil 関数
pow 関数は、x を y 乗します。この関数は、power 関数のエイリアスです。
構文
pow(x, y)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点型です。 |
y | このパラメーターの値は倍精度浮動小数点型です。 |
戻り値の型
double 型。
例
2 の 5 乗を求めてください。
クエリステートメント
* | SELECT pow(2,5)クエリと分析結果

power 関数
x を y 乗します。
構文
power(x, y)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点数型です。 |
y | このパラメーターの値は倍精度浮動小数点数型です。 |
戻り値の型
倍精度浮動小数点数型。
例
2 の 5 乗を計算します。
クエリ文
* | SELECT power(2,5)クエリと分析結果

radians 関数
radians 関数は、度単位の角度をラジアン単位の角度に変換します。
構文
radians(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点型です。 |
戻り値の型
double 型。
例
App Service プランは、Web アプリの場所、機能、およびコンピューティング リソースを定義します。az appservice plan create コマンドを使用して App Service プランを作成します。
クエリステートメント
* | SELECT radians(180)クエリと分析結果

rand 関数
rand 関数は乱数を返します。
構文
rand()戻り値の型
double 型。
例
乱数を取得します。
クエリ文
* | select rand()クエリと分析結果

random 関数
random 関数は、[0,x) の範囲の乱数を返します。
構文
次の構文を使用すると、関数は [0,1) の範囲の乱数を返します。
random()次の構文を使用すると、関数は [0,x) の範囲の乱数を返します。
random(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、tinyint、smallint、integer、または bigint 型です。 |
戻り値の型
パラメーター値のデータ型と同じです。
例
[0,100) の範囲の乱数を取得します。
クエリ文
* | select random(100)クエリと分析結果

round 関数
round 関数は、x を最も近い整数または小数に四捨五入します。n が指定されている場合、関数は小数点以下 n 桁を保持します。n が指定されていない場合、関数は x を最も近い整数に四捨五入します。
構文
次の構文を使用する場合、関数は x を最も近い整数に四捨五入します。
round(x)次の構文を使用する場合、関数は x を小数点以下 n 桁の最も近い小数に四捨五入します。
round(x, n)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、tinyint、smallint、integer、または bigint 型です。 |
n | このパラメーターは、関数が保持する小数点以下の桁数を指定します。 |
戻り値の型
パラメーター値のデータ型と同じです。
例
本日のページビュー (PV) 数を前日の PV 数と比較します。次に、比較結果をパーセンテージで表示します。
クエリ文
* | SELECT diff [1] AS today, round((diff [3] -1.0) * 100, 2) AS growth FROM (SELECT compare(pv, 86400) as diff FROM (SELECT COUNT(*) as pv FROM website_log))クエリと分析結果

ceiling 関数
sign 関数は、x の符号を返します。有効な値:1、0、および -1。
構文
sign(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は、integer、smallint、tinyint、real、double、bigint、または decimal(p, s) 型です。
|
戻り値の型
パラメータ値のデータ型と同じです。
例
10 の符号を求めてください。
クエリステートメント
* | SELECT sign(10)クエリと分析結果

sin 関数
sin 関数は、x の正弦を計算します。
構文
sin(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
90° の角度の正弦を計算します。
クエリ文
* | select sin(pi()/2)クエリと分析結果

sqrt 関数
sqrt 関数は、x の平方根を計算します。
構文
sqrt(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
100 の平方根を計算します。
クエリ文
* | select sqrt(100)クエリと分析結果

tan 関数
tan 関数は、x のタンジェントを計算します。
構文
tan(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
30° の角度のタンジェントを計算します。
クエリ文
* | SELECT tan(pi()/6)クエリと分析結果

tanh 関数
tanh 関数は、x の双曲線正接を計算します。
構文
tanh(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
30° の角度の双曲線正接を計算します。
クエリ文
* | SELECT tanh(pi()/6)クエリと分析結果

to_base 関数
to_base 関数は、x を基数 y の文字列に変換します。
構文
to_base(x, y)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は bigint 型です。 |
y | このパラメーターの値は bigint 型です。値は記数法を指定します。有効な値: [2,36]。 |
戻り値の型
varchar 型。
例
180 を 2 進文字列に変換します。
クエリ文
* | SELECT to_base(180, 2)クエリと分析結果

truncate 関数
truncate 関数は、x の小数部分を削除します。
構文
truncate(x)パラメーター
パラメーター | 説明 |
x | このパラメーターの値は double 型です。 |
戻り値の型
double 型。
例
11.11 の小数部分を削除します。
クエリ文
* | SELECT truncate(11.11)クエリと分析結果

cos 関数
width_bucket 関数は、x のバケット番号を返します。
構文
次の構文を使用すると、関数は数値範囲を等幅のバケットに分割し、x のバケット番号を返します。
width_bucket(x, bound1, bound2, numBuckets)次の構文を使用すると、関数は、配列で指定されたバケットの範囲における x のバケット番号を返します。
width_bucket(x, bins)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値は倍精度浮動小数点型です。 |
bound1 | このパラメーターは、数値範囲の下限を指定します。 |
bound2 | このパラメーターは、数値範囲の上限を指定します。 |
numBuckets | このパラメーターは、バケットの数を指定します。 値は 0 より大きい整数である必要があります。 |
bins | このパラメーターは、バケットの範囲を指定します。値は倍精度浮動小数点型の配列です。 |
戻り値の型
bigint 型です。
x が範囲内にある場合、関数は x のバケット番号を返します。
x が下限より小さい場合、関数は 0 を返します。
x が上限を超える場合、関数は numBuckets+1 を返します。
例
例 1: 範囲 [10,80) を 7 つのバケットに分割します。次に、request_time フィールドの各値のバケット番号を取得します。
クエリステートメント
* | SELECT request_time, width_bucket(request_time, 10, 80,7) AS numBucketsクエリと分析結果

例 2: 配列を使用して 7 つのバケットの範囲を指定します。次に、request_time フィールドの各値のバケット番号を取得します。
クエリステートメント
* | SELECT request_time, width_bucket(request_time, array[10,20,30,40,50,60,70,80]) AS numBucketsクエリと分析結果
