> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-fix-nav-issues.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Документация по математическим функциям

# Математические функции

{/*AUTOGENERATED_START*/}

<div id="acos">
  ## acos
</div>

Добавленный в: v1.1.0

Возвращает арккосинус аргумента.

**Синтаксис**

```sql theme={null}
acos(x)
```

**Аргументы**

* `x` — Значение, для которого вычисляется арккосинус. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Арккосинус `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT acos(0.5);
```

```response title=Response theme={null}
1.0471975511965979
```

<div id="acosh">
  ## acosh
</div>

Добавленный в: v20.12.0

Возвращает арккосинус гиперболический.

**Синтаксис**

```sql theme={null}
acosh(x)
```

**Аргументы**

* `x` — гиперболический косинус угла. Значения в интервале: `1 ≤ x < +∞`. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает угол в радианах. Значения в интервале: `0 ≤ acosh(x) < +∞`. [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT acosh(1)
```

```response title=Response theme={null}
0
```

<div id="asin">
  ## asin
</div>

Добавленный в: v1.1.0

Вычисляет арксинус переданного аргумента.
Для аргументов в диапазоне `[-1, 1]` возвращает значение из диапазона `[-pi() / 2, pi() / 2]`.

**Синтаксис**

```sql theme={null}
asin(x)
```

**Аргументы**

* `x` — Аргумент, для которого вычисляется значение арксинуса. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значение арксинуса для переданного аргумента `x` [`Float64`](/ru/reference/data-types/float)

**Примеры**

**обратная функция**

```sql title=Query theme={null}
SELECT asin(1.0) = pi() / 2, sin(asin(1)), asin(sin(1))
```

```response title=Response theme={null}
1 1 1
```

**float32**

```sql title=Query theme={null}
SELECT toTypeName(asin(1.0::Float32))
```

```response title=Response theme={null}
Float64
```

**nan**

```sql title=Query theme={null}
SELECT asin(1.1), asin(-2), asin(inf), asin(nan)
```

```response title=Response theme={null}
nan nan nan nan
```

<div id="asinh">
  ## asinh
</div>

Добавленный в: v20.12.0

Возвращает ареасинус гиперболический.

**Синтаксис**

```sql theme={null}
asinh(x)
```

**Аргументы**

* `x` — гиперболический синус угла. Значения в интервале: `-∞ < x < +∞`. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает угол в радианах. Значения в интервале: `-∞ < asinh(x) < +∞`. [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Базовое использование**

```sql title=Query theme={null}
SELECT asinh(0)
```

```response title=Response theme={null}
0
```

<div id="atan">
  ## atan
</div>

Добавлено в: v1.1.0

Возвращает арктангенс аргумента.

**Синтаксис**

```sql theme={null}
atan(x)
```

**Аргументы**

* `x` — Значение, для которого вычисляется арктангенс. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает арктангенс числа `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT atan(1);
```

```response title=Response theme={null}
0.7853981633974483
```

<div id="atan2">
  ## atan2
</div>

Добавленный в: v20.12.0

Возвращает значение `atan2` — угол в евклидовой плоскости в радианах между положительной осью x и лучом, направленным к точке `(x, y) ≠ (0, 0)`.

**Синтаксис**

```sql theme={null}
atan2(y, x)
```

**Аргументы**

* `y` — координата y точки, через которую проходит луч. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)
* `x` — координата x точки, через которую проходит луч. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает угол `θ`, для которого `-π < θ ≤ π`, в радианах [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT atan2(1, 1)
```

```response title=Response theme={null}
0.7853981633974483
```

<div id="atanh">
  ## atanh
</div>

Добавленный в: v20.12.0

Возвращает арктангенс гиперболический.

**Синтаксис**

```sql theme={null}
atanh(x)
```

**Аргументы**

* `x` — гиперболический тангенс угла. Значение из интервала: -1 \< x \< 1. `(U)Int*`, `Float*` или `Decimal*`. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает угол в радианах. Значение из интервала: -∞ \< atanh(x) \< +∞ [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT atanh(0)
```

```response title=Response theme={null}
0
```

<div id="cbrt">
  ## cbrt
</div>

Добавленный в: v1.1.0

Возвращает кубический корень из аргумента.

**Синтаксис**

```sql theme={null}
cbrt(x)
```

**Аргументы**

* `x` — Значение, кубический корень которого нужно найти. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает кубический корень из `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT cbrt(8);
```

```response title=Response theme={null}
2
```

<div id="cos">
  ## cos
</div>

Добавленный в: v1.1.0

Возвращает косинус аргумента.

**Синтаксис**

```sql theme={null}
cos(x)
```

**Аргументы**

* `x` — угол в радианах. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float), или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает косинус `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT cos(0);
```

```response title=Response theme={null}
1
```

<div id="cosh">
  ## cosh
</div>

Добавлено в: v20.12.0

Возвращает гиперболический косинус аргумента.

**Синтаксис**

```sql theme={null}
cosh(x)
```

**Аргументы**

* `x` — Угол в радианах. Значения из интервала: `-∞ < x < +∞`. [`(U)Int*`](/ru/reference/data-types/int-uint), [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращаемое значение лежит в интервале: `1 ≤ cosh(x) < +∞` [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Базовое использование**

```sql title=Query theme={null}
SELECT cosh(0)
```

```response title=Response theme={null}
1
```

<div id="degrees">
  ## degrees
</div>

Добавленный в: v22.2.0

Преобразует радианы в градусы.

**Синтаксис**

```sql theme={null}
degrees(x)
```

**Аргументы**

* `x` — Значение в радианах. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float), или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значение `x` в градусах. [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Базовое использование**

```sql title=Query theme={null}
SELECT degrees(3.141592653589793)
```

```response title=Response theme={null}
180
```

<div id="e">
  ## e
</div>

Добавленный в: v1.1.0

Возвращает число Эйлера (e).

**Синтаксис**

```sql theme={null}
e()
```

**Аргументы**

* Отсутствуют.

**Возвращаемое значение**

Возвращает константу Эйлера [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT e();
```

```response title=Response theme={null}
2.718281828459045
```

<div id="erf">
  ## erf
</div>

Добавленный в: v1.1.0

Если `x` неотрицателен, то `erf(x/(σ√2))` — это вероятность того, что случайная величина с нормальным распределением и стандартным отклонением `σ` принимает значение, отличающееся от математического ожидания более чем на `x`.

**Синтаксис**

```sql theme={null}
erf(x)
```

**Аргументы**

* `x` — Значение, для которого вычисляется функция ошибок. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значение функции ошибок [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Правило трёх сигм**

```sql title=Query theme={null}
SELECT erf(3 / sqrt(2))
```

```response title=Response theme={null}
┌─erf(divide(3, sqrt(2)))─┐
│      0.9973002039367398 │
└─────────────────────────┘
```

<div id="erfc">
  ## erfc
</div>

Добавленный в: v1.1.0

Возвращает значение, близкое к `1-erf(x)`, без потери точности при больших значениях `x`.

**Синтаксис**

```sql theme={null}
erfc(x)
```

**Аргументы**

* `x` — Значение, для которого вычисляется значение функции ошибок. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значение дополнительной функции ошибок [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT erfc(0);
```

```response title=Response theme={null}
1
```

<div id="exp">
  ## exp
</div>

Добавленный в: v1.1.0

Возвращает число `e` в степени `x`, где `x` — аргумент функции.

**Синтаксис**

```sql theme={null}
exp(x)
```

**Аргументы**

* `x` — показатель степени. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float), или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает `e^x` [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Базовое использование**

```sql title=Query theme={null}
SELECT round(exp(-1), 4)
```

```response title=Response theme={null}
┌─round(exp(-1), 4)─┐
│            0.3679 │
└───────────────────┘
```

<div id="exp10">
  ## exp10
</div>

Добавленный в: v1.1.0

Возвращает 10, возведённое в степень заданного аргумента.

**Синтаксис**

```sql theme={null}
exp10(x)
```

**Аргументы**

* `x` — Показатель степени. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает 10^x [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT exp10(2);
```

```response title=Response theme={null}
100
```

<div id="exp2">
  ## exp2
</div>

Добавленный в: v1.1.0

Возвращает 2 в степени, равной заданному аргументу.

**Синтаксис**

```sql theme={null}
exp2(x)
```

**Аргументы**

* `x` — показатель степени. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает 2^x [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT exp2(3);
```

```response title=Response theme={null}
8
```

<div id="factorial">
  ## factorial
</div>

Добавленный в: v22.11.0

Вычисляет факториал целого числа.
Факториал 0 равен 1. Аналогично, функция `factorial()` возвращает `1` для любого отрицательного значения.
Максимальное положительное значение входного аргумента — `20`; значение `21` и больше вызовет исключение.

**Синтаксис**

```sql theme={null}
factorial(n)
```

**Аргументы**

* `n` — целое число, для которого вычисляется факториал. Максимальное значение — 20. [`(U)Int8/16/32/64`](/ru/reference/data-types/int-uint)

**Возвращаемое значение**

Возвращает факториал входного значения в типе UInt64. Для входного значения 0 или любого отрицательного числа возвращает 1. [`UInt64`](/ru/reference/data-types/int-uint)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
factorial(10)
```

```response title=Response theme={null}
3628800
```

<div id="hypot">
  ## hypot
</div>

Добавленный в: v20.12.0

Возвращает длину гипотенузы прямоугольного треугольника.
Функция `hypot` позволяет избежать проблем, возникающих при возведении в квадрат очень больших или очень маленьких чисел.

**Синтаксис**

```sql theme={null}
hypot(x, y)
```

**Аргументы**

* `x` — Первый катет прямоугольного треугольника. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)
* `y` — Второй катет прямоугольного треугольника. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает длину гипотенузы прямоугольного треугольника. [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Базовое использование**

```sql title=Query theme={null}
SELECT hypot(1, 1)
```

```response title=Response theme={null}
1.4142135623730951
```

<div id="intExp10">
  ## intExp10
</div>

Добавленный в: v1.1.0

Аналогично [exp10](#exp10), но возвращает число типа `UInt64`.

**Синтаксис**

```sql theme={null}
intExp10(x)
```

**Аргументы**

* `x` — показатель степени. [`Int*`](/ru/reference/data-types/int-uint) или [`UInt*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float)

**Возвращаемое значение**

Возвращает 10^x. [`UInt64`](/ru/reference/data-types/int-uint)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT intExp10(2);
```

```response title=Response theme={null}
100
```

<div id="intExp2">
  ## intExp2
</div>

Добавленный в: v1.1.0

Аналогично [exp2](#exp2), но возвращает число типа `UInt64`.

**Синтаксис**

```sql theme={null}
intExp2(x)
```

**Аргументы**

* `x` — Показатель степени. [`Int*`](/ru/reference/data-types/int-uint), [`UInt*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float)

**Возвращаемое значение**

Возвращает 2^x. [`UInt64`](/ru/reference/data-types/int-uint)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT intExp2(3);
```

```response title=Response theme={null}
8
```

<div id="isPrime">
  ## isPrime
</div>

Добавленный в: v26.5.0

Возвращает `1`, если аргумент — простое число, иначе `0`.

Для малых значений использует точный битмап для поиска, а
для больших — детерминированный [тест Миллера—Рабина](https://en.wikipedia.org/wiki/Miller-Rabin_primality_test).
Результат точен для всех поддерживаемых входных типов.

Для беззнаковых целочисленных типов большей разрядности (`UInt128`, `UInt256`) используйте [`isProbablePrime`](/ru/reference/functions/regular-functions/math-functions#isProbablePrime).

**Синтаксис**

```sql theme={null}
isPrime(n)
```

**Аргументы**

* `n` — беззнаковое целое число для проверки на простоту. [`UInt8`](/ru/reference/data-types/int-uint) or [`UInt16`](/ru/reference/data-types/int-uint) or [`UInt32`](/ru/reference/data-types/int-uint) or [`UInt64`](/ru/reference/data-types/int-uint)

**Возвращаемое значение**

Возвращает `1`, если `n` — простое число, и `0` в противном случае. [`UInt8`](/ru/reference/data-types/int-uint)

**Примеры**

**Простое число**

```sql title=Query theme={null}
SELECT isPrime(17)
```

```response title=Response theme={null}
1
```

**Составное число**

```sql title=Query theme={null}
SELECT isPrime(18)
```

```response title=Response theme={null}
0
```

**Большое простое число `UInt64`**

```sql title=Query theme={null}
SELECT isPrime(18446744073709551557)
```

```response title=Response theme={null}
1
```

**Максимальное значение `UInt64`**

```sql title=Query theme={null}
SELECT isPrime(18446744073709551615)
```

```response title=Response theme={null}
0
```

<div id="isProbablePrime">
  ## isProbablePrime
</div>

Добавленный в: v26.5.0

Возвращает `1`, если аргумент, вероятно, является простым числом, и `0`, если он заведомо составное.

Для `UInt8`, `UInt16`, `UInt32` и `UInt64` результат точный и совпадает с
[`isPrime`](/ru/reference/functions/regular-functions/math-functions#isPrime). Аргумент `rounds` игнорируется.

Для `UInt128` и `UInt256` возвращаемое значение `1` носит вероятностный характер. Необязательный аргумент `rounds` задаёт,
сколько раундов [Миллера—Рабина](https://en.wikipedia.org/wiki/Miller-Rabin_primality_test) используется:
чем больше раундов, тем ниже вероятность ложноположительного результата и тем дольше выполняется проверка. При равномерно случайных
свидетелях вероятность ложноположительного результата для фиксированного составного числа ограничена величиной `4^(-rounds)`; значение по умолчанию `25`
удерживает эту границу ниже `10^-15`, а максимальное значение `256` — ниже `10^-154`.

Функция детерминирована: для свидетелей используется seed, зависящий от `n`, поэтому одна и та же пара `(n, rounds)` всегда даёт
один и тот же результат. Граница `4^(-rounds)` — это вероятность для каждого входного значения при равномерно случайных свидетелях;
при нашем детерминированном seed она вместо этого описывает долю среди входных значений — составное число, которое обманывает свою
последовательность свидетелей, будет стабильно возвращать `1`.

**Синтаксис**

```sql theme={null}
isProbablePrime(n[, rounds])
```

**Аргументы**

* `n` — Беззнаковое целое число для проверки на простоту. [`UInt8`](/ru/reference/data-types/int-uint) или [`UInt16`](/ru/reference/data-types/int-uint) или [`UInt32`](/ru/reference/data-types/int-uint) или [`UInt64`](/ru/reference/data-types/int-uint) или [`UInt128`](/ru/reference/data-types/int-uint) или [`UInt256`](/ru/reference/data-types/int-uint)
* `rounds` — Необязательная положительная целочисленная константа в диапазоне `[1, 256]`. Количество раундов Миллера—Рабина для `UInt128`/`UInt256` (для более узких типов игнорируется). Значение по умолчанию: `25`. [`UInt8`](/ru/reference/data-types/int-uint) или [`UInt16`](/ru/reference/data-types/int-uint) или [`UInt32`](/ru/reference/data-types/int-uint) или [`UInt64`](/ru/reference/data-types/int-uint)

**Возвращаемое значение**

Возвращает `1`, если `n`, вероятно, является простым числом, и `0`, если оно определённо составное. [`UInt8`](/ru/reference/data-types/int-uint)

**Примеры**

**Небольшое простое число**

```sql title=Query theme={null}
SELECT isProbablePrime(17)
```

```response title=Response theme={null}
1
```

**Небольшое составное число**

```sql title=Query theme={null}
SELECT isProbablePrime(18)
```

```response title=Response theme={null}
0
```

**Максимальное простое число типа `UInt64` (точный результат)**

```sql title=Query theme={null}
SELECT isProbablePrime(18446744073709551557)
```

```response title=Response theme={null}
1
```

**Простое число Мерсенна `M_127` (`UInt128`)**

```sql title=Query theme={null}
SELECT isProbablePrime(toUInt128('170141183460469231731687303715884105727'))
```

```response title=Response theme={null}
1
```

**Простое число базового поля Curve25519 `2^255 - 19` (`UInt256`)**

```sql title=Query theme={null}
SELECT isProbablePrime(toUInt256('57896044618658097711785492504343953926634992332820282019728792003956564819949'))
```

```response title=Response theme={null}
1
```

**Быстрая, но менее надежная проверка: 5 раундов**

```sql title=Query theme={null}
SELECT isProbablePrime(toUInt256('57896044618658097711785492504343953926634992332820282019728792003956564819949'), 5)
```

```response title=Response theme={null}
1
```

<div id="lgamma">
  ## lgamma
</div>

Добавленный в: v1.1.0

Возвращает логарифм гамма-функции.

**Синтаксис**

```sql theme={null}
lgamma(x)
```

**Аргументы**

* `x` — число, для которого вычисляется логарифм гамма-функции. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Логарифм гамма-функции для `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT lgamma(5);
```

```response title=Response theme={null}
3.1780538303479458
```

<div id="log">
  ## log
</div>

Добавленный в: v1.1.0

Возвращает натуральный логарифм аргумента.

**Синтаксис**

```sql theme={null}
log(x)
```

**Псевдонимы**: `ln`

**Аргументы**

* `x` — Число, для которого вычисляется натуральный логарифм. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает натуральный логарифм числа `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT log(10);
```

```response title=Response theme={null}
2.302585092994046
```

<div id="log10">
  ## log10
</div>

Добавленный в: v1.1.0

Возвращает десятичный логарифм от аргумента.

**Синтаксис**

```sql theme={null}
log10(x)
```

**Аргументы**

* `x` — Число, для которого вычисляется десятичный логарифм. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float), или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Десятичный логарифм `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT log10(100);
```

```response title=Response theme={null}
2
```

<div id="log1p">
  ## log1p
</div>

Добавленный в: v20.12.0

Вычисляет log(1+x).
Вычисление log1p(x) точнее, чем log(1+x), для малых значений `x`.

**Синтаксис**

```sql theme={null}
log1p(x)
```

**Аргументы**

* `x` — значение из интервала: `-1 < x < +∞`. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значение из интервала: -∞ \< log1p(x) \< +∞ [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT log1p(0)
```

```response title=Response theme={null}
0
```

<div id="log2">
  ## log2
</div>

Добавленный в: v1.1.0

Возвращает двоичный логарифм аргумента.

**Синтаксис**

```sql theme={null}
log2(x)
```

**Аргументы**

* `x` — число, для которого вычисляется двоичный логарифм. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает двоичный логарифм числа `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT log2(8);
```

```response title=Response theme={null}
3
```

<div id="pi">
  ## pi
</div>

Добавленный в: v1.1.0

Возвращает число π.

**Синтаксис**

```sql theme={null}
pi()
```

**Аргументы**

* Отсутствуют.

**Возвращаемое значение**

Возвращает π [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT pi();
```

```response title=Response theme={null}
3.141592653589793
```

<div id="pow">
  ## pow
</div>

Добавленный в: v1.1.0

Возвращает x в степени y.

**Синтаксис**

```sql theme={null}
pow(x, y)
```

**Псевдонимы**: `power`

**Аргументы**

* `x` — Основание. [`(U)Int8/16/32/64`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float), или [`Decimal*`](/ru/reference/data-types/decimal)
* `y` — Показатель степени. [`(U)Int8/16/32/64`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float), или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает x^y типа [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT pow(2, 3);
```

```response title=Response theme={null}
8
```

<div id="proportionsZTest">
  ## proportionsZTest
</div>

Добавленный в: v22.3.0

Возвращает статистики критерия для Z-теста двух пропорций — статистического теста для сравнения долей в двух совокупностях x и y.
Функция поддерживает как объединённый, так и необъединённый методы оценки стандартной ошибки.
В объединённой версии две доли усредняются, и для оценки стандартной ошибки используется только одна доля.
В необъединённой версии обе доли используются отдельно.

**Синтаксис**

```sql theme={null}
proportionsZTest(successes_x, successes_y, trials_x, trials_y, conf_level, pool_type)
```

**Аргументы**

* `successes_x` — Число успехов в выборке x. [`UInt64`](/ru/reference/data-types/int-uint)
* `successes_y` — Число успехов в выборке y. [`UInt64`](/ru/reference/data-types/int-uint)
* `trials_x` — Число испытаний в выборке x. [`UInt64`](/ru/reference/data-types/int-uint)
* `trials_y` — Число испытаний в выборке y. [`UInt64`](/ru/reference/data-types/int-uint)
* `conf_level` — Доверительный уровень для теста. [`Float64`](/ru/reference/data-types/float)
* `pool_type` — Выбор метода объединения при оценке стандартной ошибки. Может быть либо 'unpooled', либо 'pooled'. [`String`](/ru/reference/data-types/string)

**Возвращаемое значение**

Возвращает кортеж, содержащий: `z_stat` (Z-статистика), `p_val` (P-значение), `ci_low` (нижняя граница доверительного интервала), `ci_high` (верхняя граница доверительного интервала). [`Tuple(Float64, Float64, Float64, Float64)`](/ru/reference/data-types/tuple)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled');
```

```response title=Response theme={null}
┌─proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled')───────────────────────────────┐
│ (-0.20656724435948853,0.8363478437079654,-0.09345975390115283,0.07563797172293502) │
└────────────────────────────────────────────────────────────────────────────────────┘
```

<div id="radians">
  ## radians
</div>

Добавленный в: v22.2.0

Преобразует градусы в радианы.

**Синтаксис**

```sql theme={null}
radians(x)
```

**Аргументы**

* `x` — Значение на входе в градусах. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float), или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значение в радианах. [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT radians(180)
```

```response title=Response theme={null}
3.141592653589793
```

<div id="sigmoid">
  ## sigmoid
</div>

Добавленный в: v20.1.0

Вычисляет сигмоидную функцию: `1 / (1 + exp(-x))`. Сигмоидная функция переводит любое действительное число в диапазон (0, 1) и обычно используется в машинном обучении.

**Синтаксис**

```sql theme={null}
sigmoid(x)
```

**Аргументы**

* `x` — Входное значение. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float)

**Возвращаемое значение**

Возвращает сигмоиду входного значения в диапазоне от 0 до 1. [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Базовое использование**

```sql title=Query theme={null}
SELECT sigmoid(0)
```

```response title=Response theme={null}
0.5
```

<div id="sign">
  ## sign
</div>

Добавленный в: v21.2.0

Возвращает знак действительного числа.

**Синтаксис**

```sql theme={null}
sign(x)
```

**Аргументы**

* `x` — значение от -∞ до +∞. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Decimal*`](/ru/reference/data-types/decimal), или [`Float*`](/ru/reference/data-types/float)

**Возвращаемое значение**

Возвращает `-1`, если `x < 0`, `0`, если `x = 0`, и `1`, если `x > 0`. [`Int8`](/ru/reference/data-types/int-uint)

**Примеры**

**Знак для нуля**

```sql title=Query theme={null}
SELECT sign(0)
```

```response title=Response theme={null}
0
```

**Знак для положительных значений**

```sql title=Query theme={null}
SELECT sign(1)
```

```response title=Response theme={null}
1
```

**Знак для отрицательного числа**

```sql title=Query theme={null}
SELECT sign(-1)
```

```response title=Response theme={null}
-1
```

<div id="sin">
  ## sin
</div>

Добавленный в: v1.1.0

Возвращает синус аргумента.

**Синтаксис**

```sql theme={null}
sin(x)
```

**Аргументы**

* `x` — Число, синус которого будет возвращён. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает синус `x`.

**Примеры**

**базовый**

```sql title=Query theme={null}
SELECT sin(1.23)
```

```response title=Response theme={null}
0.9424888019316975
```

<div id="sinh">
  ## sinh
</div>

Добавленный в: v20.12.0

Возвращает гиперболический синус.

**Синтаксис**

```sql theme={null}
sinh(x)
```

**Аргументы**

* `x` — угол в радианах. Значения из интервала: -∞ \< x \< +∞. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float), или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значения из интервала: -∞ \< sinh(x) \< +∞. [`Float64`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT sinh(0)
```

```response title=Response theme={null}
0
```

<div id="sqrt">
  ## sqrt
</div>

Добавленный в: v1.1.0

Возвращает квадратный корень из аргумента.

**Синтаксис**

```sql theme={null}
sqrt(x)
```

**Аргументы**

* `x` — число, для которого нужно вычислить квадратный корень. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает квадратный корень числа x [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT sqrt(16);
```

```response title=Response theme={null}
4
```

<div id="tan">
  ## tan
</div>

Добавленный в: v1.1.0

Возвращает тангенс аргумента.

**Синтаксис**

```sql theme={null}
tan(x)
```

**Аргументы**

* `x` — угол в радианах. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Тангенс `x`. [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT tan(0);
```

```response title=Response theme={null}
0
```

<div id="tanh">
  ## tanh
</div>

Добавленный в: v20.1.0

Возвращает гиперболический тангенс.

**Синтаксис**

```sql theme={null}
tanh(x)
```

**Аргументы**

* `x` — угол в радианах. Значение из интервала: -∞ \< x \< +∞. [`(U)Int*`](/ru/reference/data-types/int-uint) или [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значение из интервала: -1 \< tanh(x) \< 1 [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT tanh(0)
```

```response title=Response theme={null}
0
```

<div id="tgamma">
  ## tgamma
</div>

Добавленный в: v1.1.0

Возвращает гамма-функцию.

**Синтаксис**

```sql theme={null}
tgamma(x)
```

**Аргументы**

* `x` — Число, для которого вычисляется значение гамма-функции. [`(U)Int*`](/ru/reference/data-types/int-uint), [`Float*`](/ru/reference/data-types/float) или [`Decimal*`](/ru/reference/data-types/decimal)

**Возвращаемое значение**

Возвращает значение гамма-функции: [`Float*`](/ru/reference/data-types/float)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
SELECT tgamma(5);
```

```response title=Response theme={null}
24
```

<div id="widthBucket">
  ## widthBucket
</div>

Добавленный в: v23.3.0

Возвращает номер бакета, в который попадает параметр `operand`, в гистограмме, состоящей из `count` бакетов одинаковой ширины и охватывающей диапазон от `low` до `high`. Возвращает 0, если `operand` меньше `low`, и `count`+1, если `operand` больше или равен `high`.
Также для совместимости с другими базами данных предусмотрен регистронезависимый алиас `WIDTH_BUCKET`.

**Синтаксис**

```sql theme={null}
widthBucket(operand, low, high, count)
```

**Псевдонимы**: `width_bucket`

**Аргументы**

* `operand` — Значение, для которого определяется интервал. [`(U)Int8/16/32/64`](/ru/reference/data-types/int-uint)
* `low` — Нижняя граница диапазона гистограммы. [`(U)Int8/16/32/64`](/ru/reference/data-types/int-uint)
* `high` — Верхняя граница диапазона гистограммы. [`(U)Int8/16/32/64`](/ru/reference/data-types/int-uint)
* `count` — Количество интервалов одинаковой ширины. Не может быть равно нулю. [`UInt8/16/32/64`](/ru/reference/data-types/int-uint)

**Возвращаемое значение**

Возвращает номер интервала в виде целого числа. Возвращает 0, если operand \< low, и count+1, если operand >= high. [`UInt8/16/32/64`](/ru/reference/data-types/int-uint)

**Примеры**

**Пример использования**

```sql title=Query theme={null}
widthBucket(10.15, -8.6, 23, 18)
```

```response title=Response theme={null}
11
```
