この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

算術関数

SAQL クエリで数値演算を実行するには、算術+関数を使用します。

SAQL 算術関数は、foreach ステートメント、および foreach ステートメントの後の filter by 句で使用できます。

group by 句または order by 句では算術関数を使用できません。foreach ステートメントの前の filter by 句で算術関数を使用することもできませんが、foreach ステートメントの後なら使用できます

関数

次の表は、SAQL 算術関数の一覧です。
関数 説明
abs(n) n の絶対数を数値として返します。n には、範囲が -1e308 <= n <= 1e308 の任意の実数値を指定できます。
次の例は有効です。
1q = foreach q generate abs(pct_change) as pct_magnitude;
次の例は無効です。
1q = group q by abs(pct_change);
2q = order q by abs(pct_change);
ceil(n) n 以上で最も近い整数値を返します。n には、範囲が -1e308 <= n <= 1e308 の任意の実数値を指定できます。
次の例は有効です。
1q = foreach q generate ceil(miles) as distance;
次の例は無効です。
1q = group q by ceil(miles);
2q = order q by ceil(miles);
floor(n) n 以下で最も近い整数値を返します。n には、範囲が -1e308 <= n <= 1e308 の任意の実数値を指定できます。
次の例は有効です。
1q = foreach q generate floor(miles) as distance;
次の例は無効です。
1q = group q by floor(miles);
2q = order q by floor(miles);
trunc(n[, m]) 数値式 n を小数点以下第 m 位で切り捨てた値を返します。m には負の数を指定できます。その場合、この関数では小数点の左側 m 桁以下を切り捨てた n を返します。m が省略された場合は、小数点以下を切り捨てた n を返します。n には、範囲が -1e308 <= n <= 1e308 の任意の実数値を指定できます。m には、-15 ~ 15 の整数値を指定できます。
次の例は有効です。
1q = foreach q generate trunc(Price, 2) as Price;
次の例は無効です。
1q = group q by trunc(Price, 2);
2q = order q by trunc(Price, 2);
round(n[, m]) 小数点以下第 m 位に四捨五入した n の値を返します。m には負の数を指定できます。その場合、この関数では小数点の左側 m 桁以下を四捨五入した n を返します。m が省略された場合は、最も近い整数に四捨五入した n を返します。0 を基準にして半分 (0.5 未満) が切り捨て、0.5 以上が切り上げになります。n には、範囲が -1e308 <= n <= 1e308 の任意の実数値を指定できます。m には、-15 ~ 15 の整数値を指定できます。
次の例は有効です。
1q = foreach q generate round(Price, 2) as Price;
次の例は無効です。
1q = group q by round(Price, 2);
2q = order q by round(Price, 2);
exp(n)

n の累乗まで乗算したオイラーの数値 e の値を返します。ここで、e = 2.71828183…です。0 にならない n の最小値は 3e-324 です。n には、範囲が -1e308 <= n <= 700 の任意の実数値を指定できます。

次の例は有効です。
1q = foreach q generate exp(value) as value;
2q = filter q by exp(value) < 5;
次の例は無効です。
1q = group q by exp(value);
2q = order q by exp(value);
log(m, n)

数値 n の自然対数 (基数 m) を返します。値 mn には、範囲が 0 < m、n <= 1e308 および m ≠ 1 の任意の 0 でない正の数値を指定できます。

m で許可される最小数値入力は >0、m!=1 です。0 にならない m または n の最小数値は log(10, 0.3e-323) です。

次の例は有効です。
1q = foreach q generate log(10, Population) as Population;
2q = filter q by log(10, Population) < 15;
次の例は無効です。
1q = group q by log(10, Population);
2q = order q by log(10, Population);
power(m, n)

n 番目の累乗まで乗算した m を返します。mn には、範囲が -1e308 <= mn <= 1e308 の任意の数値を指定できます。m = 0 で n < 0 の場合は null を返します。

  • m = 0 の場合、n は負でない値である必要があります。
  • m < 0 の場合、n は整数値である必要があります。
  • power(m, n) の結果は、float64 の数値で表される範囲内である必要があります。
次の例は有効です。
1q = foreach q generate power(length, 2) as area, length;
2q = filter q by power(length, 2) > 10;
次の例は無効です。
1q = group q by power(length, 2);
2q = order q by power(length, 2);
sqrt(n)

数値 n の平方根を返します 値 n には、範囲が 0 <= n <= 1e308 の任意の負でない数値を指定できます。

次の例は有効です。
1q = foreach q generate sqrt(value) as value;
2q = filter q by sqrt(value) < 10;
次の例は無効です。
1q = group q by sqrt(value);
2q = order q by sqrt(value);