mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-14 02:12:21 +00:00
1012 lines
19 KiB
Markdown
1012 lines
19 KiB
Markdown
|
---
|
|||
|
slug: /ja/sql-reference/functions/math-functions
|
|||
|
sidebar_position: 125
|
|||
|
sidebar_label: 数学関数
|
|||
|
---
|
|||
|
|
|||
|
# 数学関数
|
|||
|
|
|||
|
## e
|
|||
|
|
|||
|
$e$([オイラー数](https://en.wikipedia.org/wiki/Euler%27s_constant))を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
e()
|
|||
|
```
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md)。
|
|||
|
|
|||
|
## pi
|
|||
|
|
|||
|
$\pi$([パイ](https://en.wikipedia.org/wiki/Pi))を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
pi()
|
|||
|
```
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md)。
|
|||
|
|
|||
|
## exp
|
|||
|
|
|||
|
$x$を指定した引数として、$e^{x}$を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
exp(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
クエリ:
|
|||
|
|
|||
|
```sql
|
|||
|
SELECT round(exp(-1), 4);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```response
|
|||
|
┌─round(exp(-1), 4)─┐
|
|||
|
│ 0.3679 │
|
|||
|
└───────────────────┘
|
|||
|
```
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## log
|
|||
|
|
|||
|
引数の自然対数を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
log(x)
|
|||
|
```
|
|||
|
|
|||
|
別名: `ln(x)`
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## exp2
|
|||
|
|
|||
|
指定した引数の2のべき乗を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
exp2(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## intExp2
|
|||
|
|
|||
|
[`exp`](#exp) のように挙動しますが、UInt64を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
intExp2(x)
|
|||
|
```
|
|||
|
|
|||
|
## log2
|
|||
|
|
|||
|
引数の二進対数を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
log2(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## exp10
|
|||
|
|
|||
|
指定した引数の10のべき乗を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
exp10(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## intExp10
|
|||
|
|
|||
|
[`exp10`](#exp10) のように挙動しますが、UInt64を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
intExp10(x)
|
|||
|
```
|
|||
|
|
|||
|
## log10
|
|||
|
|
|||
|
引数の十進対数を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
log10(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## sqrt
|
|||
|
|
|||
|
引数の平方根を返します。
|
|||
|
|
|||
|
```sql
|
|||
|
sqrt(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## cbrt
|
|||
|
|
|||
|
引数の立方根を返します。
|
|||
|
|
|||
|
```sql
|
|||
|
cbrt(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## erf
|
|||
|
|
|||
|
`x` が非負である場合、$erf(\frac{x}{\sigma\sqrt{2}})$ は、標準偏差 $\sigma$ を持つ正規分布において、期待値から `x` を超える値を取る確率です。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
erf(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
(3 sigma ルール)
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT erf(3 / sqrt(2));
|
|||
|
```
|
|||
|
|
|||
|
```result
|
|||
|
┌─erf(divide(3, sqrt(2)))─┐
|
|||
|
│ 0.9973002039367398 │
|
|||
|
└─────────────────────────┘
|
|||
|
```
|
|||
|
|
|||
|
## erfc
|
|||
|
|
|||
|
大きな `x` 値に対して精度を失うことなく $1-erf(x)$ に近い数値を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
erfc(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## lgamma
|
|||
|
|
|||
|
ガンマ関数の対数を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
lgamma(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## tgamma
|
|||
|
|
|||
|
ガンマ関数を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
gamma(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## sin
|
|||
|
|
|||
|
引数の正弦を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
sin(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
クエリ:
|
|||
|
|
|||
|
```sql
|
|||
|
SELECT sin(1.23);
|
|||
|
```
|
|||
|
|
|||
|
```response
|
|||
|
0.9424888019316975
|
|||
|
```
|
|||
|
|
|||
|
## cos
|
|||
|
|
|||
|
引数の余弦を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
cos(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## tan
|
|||
|
|
|||
|
引数の正接を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
tan(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## asin
|
|||
|
|
|||
|
引数の逆正弦を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
asin(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## acos
|
|||
|
|
|||
|
引数の逆余弦を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
acos(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## atan
|
|||
|
|
|||
|
引数の逆正接を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
atan(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md)。
|
|||
|
|
|||
|
## pow
|
|||
|
|
|||
|
$x^y$ を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
pow(x, y)
|
|||
|
```
|
|||
|
|
|||
|
別名: `power(x, y)`
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` - [(U)Int8/16/32/64](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)
|
|||
|
- `y` - [(U)Int8/16/32/64](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md)。
|
|||
|
|
|||
|
## cosh
|
|||
|
|
|||
|
引数の[双曲線余弦](https://in.mathworks.com/help/matlab/ref/cosh.html)を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
cosh(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 角度(ラジアン)。区間の値: $-\infty \lt x \lt +\infty$。[ (U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 区間: $1 \le cosh(x) \lt +\infty$。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT cosh(0);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─cosh(0)──┐
|
|||
|
│ 1 │
|
|||
|
└──────────┘
|
|||
|
```
|
|||
|
|
|||
|
## acosh
|
|||
|
|
|||
|
[inverse hyperbolic 余弦](https://www.mathworks.com/help/matlab/ref/acosh.html)を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
acosh(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 角度の双曲線余弦。区間の値: $1 \le x \lt +\infty$。[ (U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 角度(ラジアン)。区間の値: $0 \le acosh(x) \lt +\infty$。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT acosh(1);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─acosh(1)─┐
|
|||
|
│ 0 │
|
|||
|
└──────────┘
|
|||
|
```
|
|||
|
|
|||
|
## sinh
|
|||
|
|
|||
|
[双曲線正弦](https://www.mathworks.com/help/matlab/ref/sinh.html)を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
sinh(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 角度(ラジアン)。区間の値: $-\infty \lt x \lt +\infty$。[ (U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 区間の値: $-\infty \lt sinh(x) \lt +\infty$。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT sinh(0);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─sinh(0)──┐
|
|||
|
│ 0 │
|
|||
|
└──────────┘
|
|||
|
```
|
|||
|
|
|||
|
## asinh
|
|||
|
|
|||
|
[逆双曲線正弦](https://www.mathworks.com/help/matlab/ref/asinh.html)を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
asinh(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 角度の双曲線正弦。区間の値: $-\infty \lt x \lt +\infty$。[ (U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 角度(ラジアン)。区間の値: $-\infty \lt asinh(x) \lt +\infty$。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT asinh(0);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─asinh(0)─┐
|
|||
|
│ 0 │
|
|||
|
└──────────┘
|
|||
|
```
|
|||
|
|
|||
|
## tanh
|
|||
|
|
|||
|
[双曲線正接](https://www.mathworks.com/help/matlab/ref/tanh.html)を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
tanh(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 角度(ラジアン)。区間の値: $-\infty \lt x \lt +\infty$。[ (U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 区間の値: $-1 \lt tanh(x) \lt 1$。
|
|||
|
|
|||
|
型: [Float*](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT tanh(0);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
0
|
|||
|
```
|
|||
|
|
|||
|
## atanh
|
|||
|
|
|||
|
[逆双曲線正接](https://www.mathworks.com/help/matlab/ref/atanh.html)を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
atanh(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 角度の双曲線正接。区間の値: $-1 \lt x \lt 1$。[ (U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 角度(ラジアン)。区間の値: $-\infty \lt atanh(x) \lt +\infty$。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT atanh(0);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─atanh(0)─┐
|
|||
|
│ 0 │
|
|||
|
└──────────┘
|
|||
|
```
|
|||
|
|
|||
|
## atan2
|
|||
|
|
|||
|
[atan2](https://en.wikipedia.org/wiki/Atan2) を、ユークリッド平面における角度として返し、ラジアンで表されますが、正の x 軸と点 `(x, y) ≠ (0, 0)` への光線との間のものです。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
atan2(y, x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `y` — 光線が通過する点の y 座標。 [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
- `x` — 光線が通過する点の x 座標。 [(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 角度 `θ` の値として、$-\pi \lt 0 \le \pi$ の区間で、ラジアンで表されます。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT atan2(1, 1);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌────────atan2(1, 1)─┐
|
|||
|
│ 0.7853981633974483 │
|
|||
|
└────────────────────┘
|
|||
|
```
|
|||
|
|
|||
|
## hypot
|
|||
|
|
|||
|
直角三角形の斜辺の長さを返します。[Hypot](https://en.wikipedia.org/wiki/Hypot) は非常に大きな数や非常に小さな数を平方する際の問題を回避します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
hypot(x, y)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 直角三角形の一つのカテート。[(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
- `y` — 直角三角形のもう一つのカテート。[(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 直角三角形の斜辺の長さ。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT hypot(1, 1);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌────────hypot(1, 1)─┐
|
|||
|
│ 1.4142135623730951 │
|
|||
|
└────────────────────┘
|
|||
|
```
|
|||
|
|
|||
|
## log1p
|
|||
|
|
|||
|
`log(1+x)` を計算します。 [計算](https://en.wikipedia.org/wiki/Natural_logarithm#lnp1) `log1p(x)` は、小さな値の x に対して `log(1+x)` よりも精度が高いです。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
log1p(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 値の範囲: $-1 \lt x \lt +\infty$。[(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md) または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 値の範囲: $-\infty < log1p(x) \lt +\infty$。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT log1p(0);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─log1p(0)─┐
|
|||
|
│ 0 │
|
|||
|
└──────────┘
|
|||
|
```
|
|||
|
|
|||
|
## sign
|
|||
|
|
|||
|
実数の符号を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
sign(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 値は $-\infty$ から $+\infty$ まで。ClickHouse のすべての数値型をサポートしています。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- `x < 0` の場合は -1
|
|||
|
- `x = 0` の場合は 0
|
|||
|
- `x > 0` の場合は 1
|
|||
|
|
|||
|
型: [Int8](../data-types/int-uint.md)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
ゼロ値の符号:
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT sign(0);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─sign(0)─┐
|
|||
|
│ 0 │
|
|||
|
└─────────┘
|
|||
|
```
|
|||
|
|
|||
|
正の値の符号:
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT sign(1);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─sign(1)─┐
|
|||
|
│ 1 │
|
|||
|
└─────────┘
|
|||
|
```
|
|||
|
|
|||
|
負の値の符号:
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT sign(-1);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─sign(-1)─┐
|
|||
|
│ -1 │
|
|||
|
└──────────┘
|
|||
|
```
|
|||
|
|
|||
|
## sigmoid
|
|||
|
|
|||
|
[sigmoid 関数](https://en.wikipedia.org/wiki/Sigmoid_function)を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
sigmoid(x)
|
|||
|
```
|
|||
|
|
|||
|
**パラメータ**
|
|||
|
|
|||
|
- `x` — 入力値。範囲は $-\infty \lt x \lt +\infty$。[(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md), または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 0から1の間の sigmoid 曲線に沿った対応する値。[Float64](../data-types/float.md)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
クエリ:
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT round(sigmoid(x), 5) FROM (SELECT arrayJoin([-1, 0, 1]) AS x);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
0.26894
|
|||
|
0.5
|
|||
|
0.73106
|
|||
|
```
|
|||
|
|
|||
|
## degrees
|
|||
|
|
|||
|
ラジアンを度に変換します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
degrees(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 入力値(ラジアン)。[(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md), または [Decimal*](../data-types/decimal.md)。
|
|||
|
- `x` — 入力値(ラジアン)。[(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md), または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- 度で表された値。[Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT degrees(3.141592653589793);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─degrees(3.141592653589793)─┐
|
|||
|
│ 180 │
|
|||
|
└────────────────────────────┘
|
|||
|
```
|
|||
|
|
|||
|
## radians
|
|||
|
|
|||
|
度をラジアンに変換します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
radians(x)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `x` — 入力値(度)。[(U)Int*](../data-types/int-uint.md), [Float*](../data-types/float.md), または [Decimal*](../data-types/decimal.md)。
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- ラジアンで表された値。
|
|||
|
|
|||
|
型: [Float64](../data-types/float.md#float32-float64)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT radians(180);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌──────radians(180)─┐
|
|||
|
│ 3.141592653589793 │
|
|||
|
└───────────────────┘
|
|||
|
```
|
|||
|
|
|||
|
## factorial
|
|||
|
|
|||
|
整数値の階乗を計算します。UInt(8|16|32|64) および Int(8|16|32|64) を含む任意のネイティブ整数型で動作します。戻りの型は UInt64 です。
|
|||
|
|
|||
|
0 の階乗は 1 です。同様に、`factorial()` 関数は任意の負の値に対して 1 を返します。入力引数の最大正の値は 20 で、21 以上の値は例外をスローします。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
``` sql
|
|||
|
factorial(n)
|
|||
|
```
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT factorial(10);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─factorial(10)─┐
|
|||
|
│ 3628800 │
|
|||
|
└───────────────┘
|
|||
|
```
|
|||
|
|
|||
|
## width_bucket
|
|||
|
|
|||
|
ヒストグラムにおいて、`operand` が `low` から `high` までの範囲に分割された `count` 等幅のバケットのうち、どのバケットに属するかを返します。`operand < low` の場合は `0` を返し、`operand >= high` の場合は `count+1` を返します。
|
|||
|
|
|||
|
`operand`、`low`、`high` は任意のネイティブ数値型にすることができます。 `count` は符号なしのネイティブ整数型にすることができ、その値はゼロであってはなりません。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
widthBucket(operand, low, high, count)
|
|||
|
```
|
|||
|
別名: `WIDTH_BUCKET`
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
``` sql
|
|||
|
SELECT widthBucket(10.15, -8.6, 23, 18);
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```result
|
|||
|
┌─widthBucket(10.15, -8.6, 23, 18)─┐
|
|||
|
│ 11 │
|
|||
|
└──────────────────────────────────┘
|
|||
|
```
|
|||
|
|
|||
|
## proportionsZTest
|
|||
|
|
|||
|
二つの母集団 `x` と `y` の比率を比較するための統計的検定である2比率Z検定の統計量を返します。
|
|||
|
|
|||
|
**構文**
|
|||
|
|
|||
|
```sql
|
|||
|
proportionsZTest(successes_x, successes_y, trials_x, trials_y, conf_level, pool_type)
|
|||
|
```
|
|||
|
|
|||
|
**引数**
|
|||
|
|
|||
|
- `successes_x`: 母集団 `x` における成功の数。 [UInt64](../data-types/int-uint.md)。
|
|||
|
- `successes_y`: 母集団 `y` における成功の数。 [UInt64](../data-types/int-uint.md)。
|
|||
|
- `trials_x`: 母集団 `x` における試行の数。 [UInt64](../data-types/int-uint.md)。
|
|||
|
- `trials_y`: 母集団 `y` における試行の数。 [UInt64](../data-types/int-uint.md)。
|
|||
|
- `conf_level`: 検定における信頼水準。 [Float64](../data-types/float.md)。
|
|||
|
- `pool_type`: プール方式(標準誤差の推定方式)。`unpooled` または `pooled` のいずれか。 [String](../data-types/string.md)。
|
|||
|
|
|||
|
:::note
|
|||
|
引数 `pool_type` に関して: プールされたバージョンでは、2つの比率が平均され、1つの比率だけが標準誤差を推定するために使用されます。プールされていないバージョンでは、2つの比率が別々に使用されます。
|
|||
|
:::
|
|||
|
|
|||
|
**返される値**
|
|||
|
|
|||
|
- `z_stat`: Z 統計量。 [Float64](../data-types/float.md)。
|
|||
|
- `p_val`: P 値。 [Float64](../data-types/float.md)。
|
|||
|
- `ci_low`: 下側の信頼区間。 [Float64](../data-types/float.md)。
|
|||
|
- `ci_high`: 上側の信頼区間。 [Float64](../data-types/float.md)。
|
|||
|
|
|||
|
**例**
|
|||
|
|
|||
|
クエリ:
|
|||
|
|
|||
|
```sql
|
|||
|
SELECT proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled');
|
|||
|
```
|
|||
|
|
|||
|
結果:
|
|||
|
|
|||
|
```response
|
|||
|
┌─proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled')───────────────────────────────┐
|
|||
|
│ (-0.20656724435948853,0.8363478437079654,-0.09345975390115283,0.07563797172293502) │
|
|||
|
└────────────────────────────────────────────────────────────────────────────────────┘
|
|||
|
```
|