メインコンテンツへスキップ
メインコンテンツへスキップ

数学関数

acos

導入バージョン: v1.1

与えられた引数の逆余弦を返します。

構文

acos(x)

引数

返り値

x の逆余弦の値を返します。型は Float*

使用例

SELECT acos(0.5);
1.0471975511965979

acosh

導入バージョン: v20.12

逆双曲線余弦関数を返します。

構文

acosh(x)

引数

  • x — 角度の双曲線余弦値。値の範囲: 1 ≤ x < +∞(U)Int* または Float* または Decimal*

戻り値

角度をラジアンで返します。値の範囲: 0 ≤ acosh(x) < +∞Float64

使用例

SELECT acosh(1)
0

asin

導入バージョン: v1.1

指定された引数の逆正弦(アークサイン)値を計算します。 引数が [-1, 1] の範囲にある場合、戻り値は [-pi() / 2, pi() / 2] の範囲になります。

構文

asin(x)

引数

  • x — 逆正弦(アークサイン)を計算する対象の引数。(U)Int* または Float* または Decimal

返り値

指定した引数 x の逆正弦値を返します。型は Float64 です。

使用例

逆関数

SELECT asin(1.0) = pi() / 2, sin(asin(1)), asin(sin(1))
1 1 1

float32

SELECT toTypeName(asin(1.0::Float32))
Float64

nan

SELECT asin(1.1), asin(-2), asin(inf), asin(nan)
nan nan nan nan

asinh

導入バージョン: v20.12

逆双曲線正弦関数の値を返します。

構文

asinh(x)

引数

  • x — 角度の双曲線正弦値。範囲: -∞ < x < +∞ の値。(U)Int* または Float* または Decimal*

返される値

角度をラジアン単位で返します。範囲: -∞ < asinh(x) < +∞ の値。Float64

基本的な使用方法

SELECT asinh(0)
0

atan

導入バージョン: v1.1

引数のアークタンジェント(逆正接)を返します。

構文

atan(x)

引数

  • x — 逆正接(アークタンジェント)を求める値。(U)Int* または Float* または Decimal*

戻り値

x の逆正接を返します。Float*

使用例

SELECT atan(1);
0.7853981633974483

atan2

導入バージョン: v20.12

ユークリッド平面において、正の x 軸から原点から点 (x, y) ≠ (0, 0) に向かう半直線までの角度(ラジアン)としての atan2 を返します。

構文

atan2(y, x)

引数

戻り値

-π < θ ≤ π を満たす角度 θ をラジアン単位で返します。Float64

使用例

SELECT atan2(1, 1)
0.7853981633974483

atanh

導入バージョン: v20.12

逆双曲線正接を返します。

構文

atanh(x)

引数

  • x — 双曲線正接の値。区間: -1 < x < 1。(U)Int*Float* または Decimal*(U)Int* または Float* または Decimal*

返り値

ラジアンで表される角度を返します。区間: -∞ < atanh(x) < +∞ Float64

使用例

SELECT atanh(0)
0

cbrt

導入バージョン: v1.1

引数の立方根を返します。

構文

cbrt(x)

引数

返り値

x の立方根を返します。Float*

使用例

SELECT cbrt(8);
2

cos

導入: v1.1

引数の余弦を返します。

構文

cos(x)

引数

戻り値

x の余弦を返します。Float*

使用例

SELECT cos(0);
1

cosh

導入バージョン: v20.12

引数の双曲線余弦を返します。

構文

cosh(x)

引数

  • x — ラジアンで表した角度。値は区間 -∞ < x < +∞ を取ります。(U)Int* または Float* または Decimal*

返り値

区間 1 ≤ cosh(x) < +∞ の値を返します。Float64

基本的な使い方

SELECT cosh(0)
1

degrees

導入バージョン: v22.2

ラジアンを度に変換します。

構文

degrees(x)

引数

戻り値

x を度に変換した値を返します。Float64

基本的な使用例

SELECT degrees(3.141592653589793)
180

e

導入バージョン:v1.1

オイラー定数 e を返します。

構文

e()

引数

  • なし。

戻り値

オイラーの定数を返します Float64

使用例

SELECT e();
2.718281828459045

erf

導入バージョン: v1.1

x が非負の場合、erf(x/(σ√2)) は、標準偏差 σ を持つ正規分布に従う確率変数が、期待値から x を超えて離れた値をとる確率です。

構文

erf(x)

引数

返される値

誤差関数の値を返します。型は Float* です。

3シグマの法則

SELECT erf(3 / sqrt(2))
┌─erf(divide(3, sqrt(2)))─┐
│      0.9973002039367398 │
└─────────────────────────┘

erfc

導入バージョン: v1.1

x の値が大きい場合でも精度を失うことなく、1-erf(x) に近い数値を返します。

構文

erfc(x)

引数

戻り値

相補誤差関数の値 Float* を返します

使用例

SELECT erfc(0);
1

exp

導入バージョン: v1.1

与えられた引数 x に対して、e の x 乗を返します。

構文

exp(x)

引数

戻り値

e^x を返します。型は Float* です。

基本的な使用例

SELECT round(exp(-1), 4)
┌─round(exp(-1), 4)─┐
│            0.3679 │
└───────────────────┘

exp10

導入バージョン: v1.1

指定した引数を指数とする 10 のべき乗を返します。

構文

exp10(x)

引数

戻り値

10^x を返します。戻り値の型は Float* です。

使用例

SELECT exp10(2);
100

exp2

導入バージョン: v1.1

与えられた引数を指数とする 2 のべき乗を返します。

構文

exp2(x)

引数

返り値

2^x を返します。戻り値の型は Float* です。

使用例

SELECT exp2(3);
8

factorial

導入バージョン: v22.11

整数値の階乗を計算します。 0 の階乗は 1 です。同様に、factorial() 関数は任意の負の値に対して 1 を返します。 入力引数として指定できる最大の正の値は 20 であり、21 以上を指定すると例外が発生します。

構文

factorial(n)

引数

  • n — 階乗を計算する対象の整数値。最大値は 20。(U)Int8/16/32/64

戻り値

入力値の階乗を UInt64 型で返します。入力が 0 または負の値の場合は 1 を返します。UInt64

使用例

factorial(10)
3628800

hypot

導入バージョン: v20.12

直角三角形の斜辺の長さを返します。 hypot は、非常に大きな数値または非常に小さな数値を二乗するときに発生する問題を回避します。

構文

hypot(x, y)

引数

戻り値

直角三角形の斜辺の長さを返します。Float64

基本的な使い方

SELECT hypot(1, 1)
1.4142135623730951

intExp10

導入バージョン: v1.1

exp10 と同様ですが、UInt64 型の数値を返します。

構文

intExp10(x)

引数

戻り値

10^x を返します。UInt64

使用例

SELECT intExp10(2);
100

intExp2

導入バージョン: v1.1

exp2 と同様ですが、UInt64 型の数値を返します。

構文

intExp2(x)

引数

戻り値

2^x を返します。UInt64

使用例

SELECT intExp2(3);
8

lgamma

導入されたバージョン: v1.1

ガンマ関数の対数を返します。

構文

lgamma(x)

引数

戻り値

x のガンマ関数の対数を返します。Float*

使用例

SELECT lgamma(5);
3.1780538303479458

log

導入されたバージョン: v1.1

引数の自然対数を返します。

構文

log(x)

別名: ln

引数

返り値

x の自然対数を返します。Float*

使用例

SELECT log(10);
2.302585092994046

log10

導入: v1.1

引数の常用対数を返します。

構文

log10(x)

引数

返り値

x の常用対数を返します。Float*

使用例

SELECT log10(100);
2

log1p

導入バージョン: v20.12

log(1+x) の値を計算します。 小さい値の x に対しては、log1p(x) の方が log(1+x) よりも高い精度で計算できます。

構文

log1p(x)

引数

戻り値

区間 -∞ < log1p(x) < +∞ に属する値を返します。Float64

使用例

SELECT log1p(0)
0

log2

導入されたバージョン: v1.1

引数の二進対数を返します。

構文

log2(x)

引数

戻り値

x の 2 を底とする対数(バイナリ対数)を返します。Float*

使用例

SELECT log2(8);
3

pi

導入バージョン:v1.1

円周率 (π) を返します。

構文

pi()

引数

  • なし

戻り値

Float64 型の pi を返します。

使用例

SELECT pi();
3.141592653589793

pow

導入バージョン: v1.1

x を y 乗した結果を返します。

構文

pow(x, y)

別名: power

引数

戻り値

x^y を計算し、その結果を Float64 型で返します。

使用例

SELECT pow(2, 3);
8

radians

導入バージョン: v22.2

角度(度)をラジアンに変換します。

構文

radians(x)

引数

返り値

値をラジアンで返します。Float64

使用例

SELECT radians(180)
3.141592653589793

sign

導入バージョン: v21.2

実数の符号を返します。

構文

符号(x)

引数

戻り値

x < 0 の場合は -1x = 0 の場合は 0x > 0 の場合は 1 を返します。Int8

ゼロの符号

SELECT sign(0)
0

正の符号

SELECT sign(1)
1

負の符号

SELECT sign(-1)
-1

sin

導入バージョン: v

引数の正弦(サイン)を返します。

構文

sin(x)

引数

戻り値

x の正弦値を返します。

シンプルな例

SELECT sin(1.23)
0.9424888019316975

sinh

導入: v20.12

双曲線正弦を返します。

構文

sinh(x)

引数

  • x — ラジアンで表した角度。値の範囲は -∞ < x < +∞。(U)Int* または Float* または Decimal*

返り値

値の範囲が -∞ < sinh(x) < +∞ の値を返します。Float64

使用例

SELECT sinh(0)
0

sqrt

導入バージョン: v1.1

引数の平方根を返します。

構文

sqrt(x)

引数

返り値

x の平方根を返します。Float*

使用例

SELECT sqrt(16);
4

tan

導入: v1.1

引数の正接(タンジェント)を返します。

構文

tan(x)

引数

戻り値

x の正接を返します。Float*

使用例

SELECT tan(0);
0

tanh

導入バージョン: v20.1

双曲線正接関数の値を返します。

構文

tanh(x)

引数

  • x — ラジアンで表した角度。取り得る値の範囲: -∞ < x < +∞。(U)Int* または Float* または Decimal*

戻り値

取り得る値の範囲: -1 < tanh(x) < 1 の値を返します。型は Float*

使用例

SELECT tanh(0)
0

tgamma

導入されたバージョン: v1.1

ガンマ関数を返します。

構文

tgamma(x)

引数

戻り値

ガンマ関数の値を返します。Float*

使用例

SELECT tgamma(5);
24

widthBucket

導入バージョン: v23.3

operand パラメーターが、low から high の範囲を等幅に分割した count 個のビン(ヒストグラムの区間)のうちどれに属するか、そのビン番号を返します。operandlow より小さい場合は 0 を返し、operandhigh 以上の場合は count+1 を返します。 他のデータベースとの互換性のために、大文字小文字を区別しないエイリアス WIDTH_BUCKET も用意されています。

構文

widthBucket(operand, low, high, count)

別名: width_bucket

引数

戻り値

バケット番号を整数で返します。operand &lt; low の場合は 0 を返し、operand &gt;= high の場合は count+1 を返します。UInt8/16/32/64

使用例

widthBucket(10.15, -8.6, 23, 18)
11