acos
Добавленный в: v1.1.0
Возвращает арккосинус аргумента.
Синтаксис
acos(x)Аргументы
Возвращаемое значение
Арккосинус x. Float*
Примеры
Пример использования
SELECT acos(0.5);1.0471975511965974acosh
Добавленный в: v20.12.0
Возвращает арккосинус гиперболический.
Синтаксис
acosh(x)Аргументы
Возвращаемое значение
Возвращает угол в радианах. Значения в интервале: 0 ≤ acosh(x) < +∞. Float64
Примеры
Пример использования
SELECT acosh(1)0asin
Добавленный в: v1.1.0
Вычисляет арксинус переданного аргумента.
Для аргументов в диапазоне [-1, 1] возвращает значение из диапазона [-pi() / 2, pi() / 2].
Синтаксис
asin(x)Аргументы
Возвращаемое значение
Возвращает значение арксинуса для переданного аргумента x Float64
Примеры
обратная функция
SELECT asin(1.0) = pi() / 2, sin(asin(1)), asin(sin(1))1 1 0.9999999999999999float32
SELECT toTypeName(asin(1.0::Float32))Float64nan
SELECT asin(1.1), asin(-2), asin(inf), asin(nan)nan nan nan nanasinh
Добавленный в: v20.12.0
Возвращает ареасинус гиперболический.
Синтаксис
asinh(x)Аргументы
Возвращаемое значение
Возвращает угол в радианах. Значения в интервале: -∞ < asinh(x) < +∞. Float64
Примеры
Базовое использование
SELECT asinh(0)0atan
Добавлено в: v1.1.0
Возвращает арктангенс аргумента.
Синтаксис
atan(x)Аргументы
Возвращаемое значение
Возвращает арктангенс числа x. Float*
Примеры
Пример использования
SELECT atan(1);0.7853981633974483atan2
Добавленный в: v20.12.0
Возвращает значение atan2 — угол в евклидовой плоскости в радианах между положительной осью x и лучом, направленным к точке (x, y) ≠ (0, 0).
Синтаксис
atan2(y, x)Аргументы
y— координата y точки, через которую проходит луч.(U)Int*илиFloat*илиBFloat16илиDecimal*x— координата x точки, через которую проходит луч.(U)Int*илиFloat*илиBFloat16илиDecimal*
Возвращаемое значение
Возвращает угол θ, для которого -π < θ ≤ π, в радианах Float64
Примеры
Пример использования
SELECT atan2(1, 1)0.7853981633974483atanh
Добавленный в: v20.12.0
Возвращает арктангенс гиперболический.
Синтаксис
atanh(x)Аргументы
x— гиперболический тангенс угла. Значение из интервала: -1 < x < 1.(U)Int*,Float*илиDecimal*.(U)Int*илиFloat*илиDecimal*
Возвращаемое значение
Возвращает угол в радианах. Значение из интервала: -∞ < atanh(x) < +∞ Float64
Примеры
Пример использования
SELECT atanh(0)0cbrt
Добавленный в: v1.1.0
Возвращает кубический корень из аргумента.
Синтаксис
cbrt(x)Аргументы
Возвращаемое значение
Возвращает кубический корень из x. Float*
Примеры
Пример использования
SELECT cbrt(8);2cos
Добавленный в: v1.1.0
Возвращает косинус аргумента.
Синтаксис
cos(x)Аргументы
Возвращаемое значение
Возвращает косинус x. Float*
Примеры
Пример использования
SELECT cos(0);1cosh
Добавлено в: v20.12.0
Возвращает гиперболический косинус аргумента.
Синтаксис
cosh(x)Аргументы
Возвращаемое значение
Возвращаемое значение лежит в интервале: 1 ≤ cosh(x) < +∞ Float64
Примеры
Базовое использование
SELECT cosh(0)1degrees
Добавленный в: v22.2.0
Преобразует радианы в градусы.
Синтаксис
degrees(x)Аргументы
Возвращаемое значение
Возвращает значение x в градусах. Float64
Примеры
Базовое использование
SELECT degrees(3.141592653589793)180e
Добавленный в: v1.1.0
Возвращает число Эйлера (e).
Синтаксис
e()Аргументы
- Отсутствуют.
Возвращаемое значение
Возвращает константу Эйлера Float64
Примеры
Пример использования
SELECT e();2.718281828459045erf
Добавленный в: v1.1.0
Если x неотрицателен, то erf(x/(σ√2)) — это вероятность того, что случайная величина с нормальным распределением и стандартным отклонением σ принимает значение, отличающееся от математического ожидания более чем на x.
Синтаксис
erf(x)Аргументы
Возвращаемое значение
Возвращает значение функции ошибок Float*
Примеры
Правило трёх сигм
SELECT erf(3 / sqrt(2))┌─erf(divide(3, sqrt(2)))─┐
│ 0.9973002039367398 │
└─────────────────────────┘erfc
Добавленный в: v1.1.0
Возвращает значение, близкое к 1-erf(x), без потери точности при больших значениях x.
Синтаксис
erfc(x)Аргументы
Возвращаемое значение
Возвращает значение дополнительной функции ошибок Float*
Примеры
Пример использования
SELECT erfc(0);1exp
Добавленный в: v1.1.0
Возвращает число e в степени x, где x — аргумент функции.
Синтаксис
exp(x)Аргументы
Возвращаемое значение
Возвращает e^x Float*
Примеры
Базовое использование
SELECT round(exp(-1), 4)┌─round(exp(-1), 4)─┐
│ 0.3679 │
└───────────────────┘exp10
Добавленный в: v1.1.0
Возвращает 10, возведённое в степень заданного аргумента.
Синтаксис
exp10(x)Аргументы
Возвращаемое значение
Возвращает 10^x Float*
Примеры
Пример использования
SELECT exp10(2);100exp2
Добавленный в: v1.1.0
Возвращает 2 в степени, равной заданному аргументу.
Синтаксис
exp2(x)Аргументы
Возвращаемое значение
Возвращает 2^x Float*
Примеры
Пример использования
SELECT exp2(3);8factorial
Добавленный в: v22.11.0
Вычисляет факториал целого числа.
Факториал 0 равен 1. Аналогично, функция factorial() возвращает 1 для любого отрицательного значения.
Максимальное положительное значение входного аргумента — 20; значение 21 и больше вызовет исключение.
Синтаксис
factorial(n)Аргументы
n— целое число, для которого вычисляется факториал. Максимальное значение — 20.(U)Int8/16/32/64
Возвращаемое значение
Возвращает факториал входного значения в типе UInt64. Для входного значения 0 или любого отрицательного числа возвращает 1. UInt64
Примеры
Пример использования
SELECT factorial(10)3628800hypot
Добавленный в: v20.12.0
Возвращает длину гипотенузы прямоугольного треугольника.
Функция hypot позволяет избежать проблем, возникающих при возведении в квадрат очень больших или очень маленьких чисел.
Синтаксис
hypot(x, y)Аргументы
x— Первый катет прямоугольного треугольника.(U)Int*илиFloat*илиBFloat16илиDecimal*y— Второй катет прямоугольного треугольника.(U)Int*илиFloat*илиBFloat16илиDecimal*
Возвращаемое значение
Возвращает длину гипотенузы прямоугольного треугольника. Float64
Примеры
Базовое использование
SELECT hypot(1, 1)1.4142135623730951intExp10
Добавленный в: v1.1.0
Аналогично exp10, но возвращает число типа UInt64.
Синтаксис
intExp10(x)Аргументы
Возвращаемое значение
Возвращает 10^x. UInt64
Примеры
Пример использования
SELECT intExp10(2);100intExp2
Добавленный в: v1.1.0
Аналогично exp2, но возвращает число типа UInt64.
Синтаксис
intExp2(x)Аргументы
Возвращаемое значение
Возвращает 2^x. UInt64
Примеры
Пример использования
SELECT intExp2(3);8isPrime
Добавленный в: v26.5.0
Возвращает 1, если аргумент — простое число, иначе 0.
Для малых значений использует точный битмап для поиска, а для больших — детерминированный тест Миллера—Рабина. Результат точен для всех поддерживаемых входных типов.
Для беззнаковых целочисленных типов большей разрядности (UInt128, UInt256) используйте isProbablePrime.
Синтаксис
isPrime(n)Аргументы
Возвращаемое значение
Возвращает 1, если n — простое число, и 0 в противном случае. UInt8
Примеры
Простое число
SELECT isPrime(17)1Составное число
SELECT isPrime(18)0Большое простое число UInt64
SELECT isPrime(18446744073709551557)1Максимальное значение UInt64
SELECT isPrime(18446744073709551615)0isProbablePrime
Добавленный в: v26.5.0
Возвращает 1, если аргумент, вероятно, является простым числом, и 0, если он заведомо составное.
Для UInt8, UInt16, UInt32 и UInt64 результат точный и совпадает с
isPrime. Аргумент rounds игнорируется.
Для UInt128 и UInt256 возвращаемое значение 1 носит вероятностный характер. Необязательный аргумент rounds задаёт,
сколько раундов Миллера—Рабина используется:
чем больше раундов, тем ниже вероятность ложноположительного результата и тем дольше выполняется проверка. При равномерно случайных
свидетелях вероятность ложноположительного результата для фиксированного составного числа ограничена величиной 4^(-rounds); значение по умолчанию 25
удерживает эту границу ниже 10^-15, а максимальное значение 256 — ниже 10^-154.
Функция детерминирована: для свидетелей используется seed, зависящий от n, поэтому одна и та же пара (n, rounds) всегда даёт
один и тот же результат. Граница 4^(-rounds) — это вероятность для каждого входного значения при равномерно случайных свидетелях;
при нашем детерминированном seed она вместо этого описывает долю среди входных значений — составное число, которое обманывает свою
последовательность свидетелей, будет стабильно возвращать 1.
Синтаксис
isProbablePrime(n[, rounds])Аргументы
n— Беззнаковое целое число для проверки на простоту.UInt8илиUInt16илиUInt32илиUInt64илиUInt128илиUInt256rounds— Необязательная положительная целочисленная константа в диапазоне[1, 256]. Количество раундов Миллера—Рабина дляUInt128/UInt256(для более узких типов игнорируется). Значение по умолчанию:25.UInt8илиUInt16илиUInt32илиUInt64
Возвращаемое значение
Возвращает 1, если n, вероятно, является простым числом, и 0, если оно определённо составное. UInt8
Примеры
Небольшое простое число
SELECT isProbablePrime(17)1Небольшое составное число
SELECT isProbablePrime(18)0Максимальное простое число типа UInt64 (точный результат)
SELECT isProbablePrime(18446744073709551557)1Простое число Мерсенна M_127 (UInt128)
SELECT isProbablePrime(toUInt128('170141183460469231731687303715884105727'))1Простое число базового поля Curve25519 2^255 - 19 (UInt256)
SELECT isProbablePrime(toUInt256('57896044618658097711785492504343953926634992332820282019728792003956564819949'))1Быстрая, но менее надежная проверка: 5 раундов
SELECT isProbablePrime(toUInt256('57896044618658097711785492504343953926634992332820282019728792003956564819949'), 5)1lgamma
Добавленный в: v1.1.0
Возвращает логарифм гамма-функции.
Синтаксис
lgamma(x)Аргументы
Возвращаемое значение
Логарифм гамма-функции для x. Float*
Примеры
Пример использования
SELECT lgamma(5);3.1780538303479458log
Добавленный в: v1.1.0
Возвращает натуральный логарифм аргумента.
Синтаксис
log(x)Псевдонимы: ln
Аргументы
Возвращаемое значение
Возвращает натуральный логарифм числа x. Float*
Примеры
Пример использования
SELECT log(10);2.3025850938475476log10
Добавленный в: v1.1.0
Возвращает десятичный логарифм от аргумента.
Синтаксис
log10(x)Аргументы
Возвращаемое значение
Десятичный логарифм x. Float*
Примеры
Пример использования
SELECT log10(100);2log1p
Добавленный в: v20.12.0
Вычисляет log(1+x).
Вычисление log1p(x) точнее, чем log(1+x), для малых значений x.
Синтаксис
log1p(x)Аргументы
Возвращаемое значение
Возвращает значение из интервала: -∞ < log1p(x) < +∞ Float64
Примеры
Пример использования
SELECT log1p(0)0log2
Добавленный в: v1.1.0
Возвращает двоичный логарифм аргумента.
Синтаксис
log2(x)Аргументы
Возвращаемое значение
Возвращает двоичный логарифм числа x. Float*
Примеры
Пример использования
SELECT log2(8);3pi
Добавленный в: v1.1.0
Возвращает число π.
Синтаксис
pi()Аргументы
- Отсутствуют.
Возвращаемое значение
Возвращает π Float64
Примеры
Пример использования
SELECT pi();3.141592653589793pow
Добавленный в: v1.1.0
Возвращает x в степени y.
Синтаксис
pow(x, y)Псевдонимы: power
Аргументы
x— Основание.(U)Int8/16/32/64илиFloat*, илиBFloat16, илиDecimal*y— Показатель степени.(U)Int8/16/32/64илиFloat*, илиBFloat16, илиDecimal*
Возвращаемое значение
Возвращает x^y типа Float64
Примеры
Пример использования
SELECT pow(2, 3);8proportionsZTest
Добавленный в: v22.3.0
Возвращает статистики критерия для Z-теста двух пропорций — статистического теста для сравнения долей в двух совокупностях x и y. Функция поддерживает как объединённый, так и необъединённый методы оценки стандартной ошибки. В объединённой версии две доли усредняются, и для оценки стандартной ошибки используется только одна доля. В необъединённой версии обе доли используются отдельно.
Синтаксис
proportionsZTest(successes_x, successes_y, trials_x, trials_y, conf_level, pool_type)Аргументы
successes_x— Число успехов в выборке x.UInt64successes_y— Число успехов в выборке y.UInt64trials_x— Число испытаний в выборке x.UInt64trials_y— Число испытаний в выборке y.UInt64conf_level— Доверительный уровень для теста.Float64pool_type— Выбор метода объединения при оценке стандартной ошибки. Может быть либо 'unpooled', либо 'pooled'.String
Возвращаемое значение
Возвращает кортеж, содержащий: z_stat (Z-статистика), p_val (P-значение), ci_low (нижняя граница доверительного интервала), ci_high (верхняя граница доверительного интервала). Tuple(Float64, Float64, Float64, Float64)
Примеры
Пример использования
SELECT proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled');┌─proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled')───────────────────────────────┐
│ (-0.20656724435948853,0.8363478437079654,-0.09345975390115283,0.07563797172293502) │
└────────────────────────────────────────────────────────────────────────────────────┘radians
Добавленный в: v22.2.0
Преобразует градусы в радианы.
Синтаксис
radians(x)Аргументы
Возвращаемое значение
Возвращает значение в радианах. Float64
Примеры
Пример использования
SELECT radians(180)3.141592653589793sigmoid
Добавленный в: v20.1.0
Вычисляет сигмоидную функцию: 1 / (1 + exp(-x)). Сигмоидная функция переводит любое действительное число в диапазон (0, 1) и обычно используется в машинном обучении.
Синтаксис
sigmoid(x)Аргументы
Возвращаемое значение
Возвращает сигмоиду входного значения в диапазоне от 0 до 1. Float64
Примеры
Базовое использование
SELECT sigmoid(0)0.5sign
Добавленный в: v21.2.0
Возвращает знак действительного числа.
Синтаксис
sign(x)Аргументы
Возвращаемое значение
Возвращает -1, если x < 0, 0, если x = 0, и 1, если x > 0. Int8
Примеры
Знак для нуля
SELECT sign(0)0Знак для положительных значений
SELECT sign(1)1Знак для отрицательного числа
SELECT sign(-1)-1sin
Добавленный в: v1.1.0
Возвращает синус аргумента.
Синтаксис
sin(x)Аргументы
Возвращаемое значение
Возвращает синус x.
Примеры
базовый
SELECT sin(1.23)0.9424888019316975sinh
Добавленный в: v20.12.0
Возвращает гиперболический синус.
Синтаксис
sinh(x)Аргументы
Возвращаемое значение
Возвращает значения из интервала: -∞ < sinh(x) < +∞. Float64
Примеры
Пример использования
SELECT sinh(0)0sqrt
Добавленный в: v1.1.0
Возвращает квадратный корень из аргумента.
Синтаксис
sqrt(x)Аргументы
Возвращаемое значение
Возвращает квадратный корень числа x Float*
Примеры
Пример использования
SELECT sqrt(16);4tan
Добавленный в: v1.1.0
Возвращает тангенс аргумента.
Синтаксис
tan(x)Аргументы
Возвращаемое значение
Тангенс x. Float*
Примеры
Пример использования
SELECT tan(0);0tanh
Добавленный в: v20.1.0
Возвращает гиперболический тангенс.
Синтаксис
tanh(x)Аргументы
Возвращаемое значение
Возвращает значение из интервала: -1 < tanh(x) < 1 Float*
Примеры
Пример использования
SELECT tanh(0)0tgamma
Добавленный в: v1.1.0
Возвращает гамма-функцию.
Синтаксис
tgamma(x)Аргументы
Возвращаемое значение
Возвращает значение гамма-функции: Float*
Примеры
Пример использования
SELECT tgamma(5);24widthBucket
Добавленный в: v23.3.0
Возвращает номер бакета, в который попадает параметр operand, в гистограмме, состоящей из count бакетов одинаковой ширины и охватывающей диапазон от low до high. Возвращает 0, если operand меньше low, и count+1, если operand больше или равен high.
Также для совместимости с другими базами данных предусмотрен регистронезависимый алиас WIDTH_BUCKET.
Синтаксис
widthBucket(operand, low, high, count)Псевдонимы: width_bucket
Аргументы
operand— Значение, для которого определяется бакет.(U)Int8/16/32/64low— Нижняя граница диапазона гистограммы.(U)Int8/16/32/64high— Верхняя граница диапазона гистограммы.(U)Int8/16/32/64count— Количество бакетов одинаковой ширины. Не может быть равно нулю.UInt8/16/32/64
Возвращаемое значение
Возвращает номер бакета в виде целого числа. Возвращает 0, если operand < low, и count+1, если operand >= high. UInt8/16/32/64
Примеры
Пример использования
SELECT widthBucket(10.15, -8.6, 23, 18)11