Перейти к основному содержанию
Все функции в этом разделе принимают ноль или один аргумент. Единственное назначение аргумента (если он указан) — предотвратить устранение общих подвыражений, чтобы два разных вызова одной и той же функции генерации случайных чисел в пределах одной строки возвращали разные случайные значения. Связанные материалы
Случайные числа генерируются некриптографическими алгоритмами.
Приведенная ниже документация сгенерирована на основе системной таблицы system.functions.

fuzzBits

Добавленный в: v20.5.0 Инвертирует биты во входной строке s с вероятностью p для каждого бита. Синтаксис
fuzzBits(s, p)
Аргументы
  • sString или FixedString, над которыми выполняется побитовое фаззинг-искажение, String или FixedString
  • p — Вероятность инверсии каждого бита, число от 0.0 до 1.0 Float*
Возвращаемое значение Возвращает строку с фаззинг-искажением того же типа, что и s: String или FixedString Примеры Пример использования
Query
SELECT fuzzBits(materialize('abacaba'), 0.1)
FROM numbers(3)
Response
┌─fuzzBits(materialize('abacaba'), 0.1)─┐
│ abaaaja                               │
│ a*cjab+                               │
│ aeca2A                                │
└───────────────────────────────────────┘

rand

Добавленный в: v1.1.0 Возвращает случайное число UInt32 с равномерным распределением. Использует линейный конгруэнтный генератор с начальным состоянием, получаемым из системы, то есть, хотя результат и выглядит случайным, на самом деле он не является по-настоящему случайным и может быть предсказан, если известно начальное состояние. Если вам нужна истинная случайность, используйте альтернативные методы, например системные вызовы или интеграцию с внешними библиотеками. Синтаксис
rand([x])
Псевдонимы: rand32 Аргументы
  • x — необязательный, игнорируется. Единственное назначение этого аргумента — предотвратить устранение общих подвыражений, если один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число типа UInt32. UInt32 Примеры Пример использования
Query
SELECT rand();
Response
1569354847

rand64

Добавленный в: v1.1.0 Возвращает случайное равномерно распределённое число UInt64. Использует линейный конгруэнтный генератор с начальным состоянием, полученным из системы. Это означает, что, хотя результат выглядит случайным, он не является по-настоящему случайным и может быть предсказуем, если известно начальное состояние. В случаях, когда критически важна истинная случайность, используйте альтернативные методы, например системные вызовы или интеграцию с внешними библиотеками. Синтаксис
rand64([x])
Аргументы
  • x — необязательный аргумент, который игнорируется. Единственное назначение этого аргумента — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число типа UInt64 с равномерным распределением. UInt64 Примеры Пример использования
Query
SELECT rand64();
Response
15030268859237645412

randBernoulli

Добавленный в: v22.10.0 Возвращает случайное число типа Float64, взятое из распределения Бернулли. Синтаксис
randBernoulli(probability[, x])
Аргументы
  • probability — Вероятность успеха в виде значения в диапазоне от 0 до 1. Float64
  • x — Необязательный аргумент, который игнорируется. Его единственное назначение — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число Float64, сгенерированное из указанного распределения Бернулли. UInt64 Примеры Пример использования
Query
SELECT randBernoulli(.75) FROM numbers(5)
Response
┌─randBernoulli(0.75)─┐
│                   1 │
│                   1 │
│                   0 │
│                   1 │
│                   1 │
└─────────────────────┘

randBinomial

Добавленный в: v22.10.0 Возвращает случайное число типа Float64 из биномиального распределения. Синтаксис
randBinomial(experiments, probability[, x])
Аргументы
  • experiments — Количество испытаний UInt64
  • probability — Вероятность успеха в каждом испытании, значение от 0 до 1 Float64
  • x — Необязательный аргумент, который игнорируется. Его единственное назначение — предотвратить устранение общих подвыражений, если один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число Float64, сгенерированное по указанному биномиальному распределению. UInt64 Примеры Пример использования
Query
SELECT randBinomial(100, .75) FROM numbers(5)
Response
┌─randBinomial(100, 0.75)─┐
│                      74 │
│                      78 │
│                      76 │
│                      77 │
│                      80 │
└─────────────────────────┘

randCanonical

Добавленный в: v22.11.0 Возвращает случайное число типа Float64 с равномерным распределением в диапазоне от 0 (включительно) до 1 (не включая). Синтаксис
randCanonical([x])
Аргументы
  • x — необязательный аргумент, который игнорируется. Его единственное назначение — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число типа Float64. Float64 Примеры Пример использования
Query
SELECT randCanonical();
Response
0.345217890123456

randChiSquared

Добавленный в: v22.10.0 Возвращает случайное число типа Float64, полученное из хи-квадрат-распределения. Синтаксис
randChiSquared(degree_of_freedom[, x])
Аргументы
  • degree_of_freedom — Число степеней свободы. Float64
  • x — Необязательный параметр, который игнорируется. Его единственная цель — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется несколько раз в запросе. Any
Возвращаемое значение Возвращает случайное число типа Float64 из указанного распределения хи-квадрат. Float64 Примеры Пример использования
Query
SELECT randChiSquared(10) FROM numbers(5)
Response
┌─randChiSquared(10)─┐
│ 10.015463656521543 │
│  9.621799919882768 │
│   2.71785015634699 │
│ 11.128188665931908 │
│  4.902063104425469 │
└────────────────────┘

randConstant

Добавленный в: v1.1.0 Генерирует одно случайное значение, которое остается неизменным для всех строк при выполнении текущего запроса. Эта функция:
  • Возвращает одно и то же случайное значение для каждой строки в рамках одного запроса
  • Возвращает разные значения при отдельных выполнениях запроса
Полезна, когда нужно использовать одинаковые начальные значения генератора случайных чисел или идентификаторы для всех строк в наборе данных Синтаксис
randConstant([x])
Аргументы
  • x — необязательный и игнорируется. Единственное назначение этого аргумента — предотвращать устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает столбец типа UInt32, содержащий одно и то же случайное значение в каждой строке. UInt32 Примеры Базовое использование
Query
SELECT randConstant() AS random_value;
Response
| random_value |
|--------------|
| 1234567890   |
Использование с параметром
Query
SELECT randConstant(10) AS random_value;
Response
| random_value |
|--------------|
| 9876543210   |

randExponential

Добавленный в: v22.10.0 Возвращает случайное число типа Float64, сгенерированное в соответствии с экспоненциальным распределением. Синтаксис
randExponential(lambda[, x])
Аргументы
  • lambda — Параметр интенсивности, или λ-значение распределения. Float64
  • x — Необязательный, игнорируется. Единственное назначение этого аргумента — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число типа Float64 из указанного экспоненциального распределения. Float64 Примеры Пример использования
Query
SELECT randExponential(1/10) FROM numbers(5)
Response
┌─randExponential(divide(1, 10))─┐
│              44.71628934340778 │
│              4.211013337903262 │
│             10.809402553207766 │
│              15.63959406553284 │
│             1.8148392319860158 │
└────────────────────────────────┘

randFisherF

Добавленный в: v22.10.0 Возвращает случайное число Float64 из F-распределения. Синтаксис
randFisherF(d1, d2[, x])
Аргументы
  • d1 — число степеней свободы d1 в X = (S1 / d1) / (S2 / d2). Float64
  • d2 — число степеней свободы d2 в X = (S1 / d1) / (S2 / d2). Float64
  • x — Необязателен и игнорируется. Единственное назначение этого аргумента — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число типа Float64 из указанного F-распределения Float64 Примеры Пример использования
Query
SELECT randFisherF(10, 3) FROM numbers(5)
Response
┌─randFisherF(10, 20)─┐
│  0.7204609609506184 │
│  0.9926258472572916 │
│  1.4010752726735863 │
│ 0.34928401507025556 │
│  1.8216216009473598 │
└─────────────────────┘

randLogNormal

Добавленный в: v22.10.0 Возвращает случайное число Float64, выбранное из логнормального распределения. Синтаксис
randLogNormal(mean, stddev[, x])
Аргументы
  • mean — Среднее значение распределения. Float64
  • stddev — Стандартное отклонение распределения. Float64
  • x — Необязательный аргумент, который игнорируется. Единственное назначение этого аргумента — предотвратить устранение общих подвыражений, если один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число типа Float64 из указанного логнормального распределения. Float64 Примеры Пример использования
Query
SELECT randLogNormal(100, 5) FROM numbers(5)
Response
┌─randLogNormal(100, 5)─┐
│  1.295699673937363e48 │
│  9.719869109186684e39 │
│  6.110868203189557e42 │
│  9.912675872925529e39 │
│ 2.3564708490552458e42 │
└───────────────────────┘

randNegativeBinomial

Добавленный в: v22.10.0 Возвращает случайное число типа Float64 из отрицательного биномиального распределения. Синтаксис
randNegativeBinomial(experiments, probability[, x])
Аргументы
  • experiments — Число экспериментов. UInt64
  • probabilityВероятность неудачи в каждом эксперименте, задаваемая значением от 0до1. [Float64`](/reference/data-types/float)
  • x — Необязательный и игнорируется. Единственное назначение этого аргумента — предотвращать устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число типа Float64 из указанного отрицательного биномиального распределения UInt64 Примеры Пример использования
Query
SELECT randNegativeBinomial(100, .75) FROM numbers(5)
Response
┌─randNegativeBinomial(100, 0.75)─┐
│                              33 │
│                              32 │
│                              39 │
│                              40 │
│                              50 │
└─────────────────────────────────┘

randNormal

Добавленный в: v22.10.0 Возвращает случайное число Float64 из нормального распределения. Синтаксис
randNormal(mean, stddev[, x])
Аргументы
  • mean — Среднее значение распределения Float64
  • stddev — Стандартное отклонение распределения Float64
  • x — Необязательный аргумент, который игнорируется. Его единственное назначение — предотвращать устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число Float64, выбранное из указанного нормального распределения. Float64 Примеры Пример использования
Query
SELECT randNormal(10, 2) FROM numbers(5)
Response
┌──randNormal(10, 2)─┐
│ 13.389228911709653 │
│  8.622949707401295 │
│ 10.801887062682981 │
│ 4.5220192605895315 │
│ 10.901239123982567 │
└────────────────────┘

randPoisson

Добавленный в: v22.10.0 Возвращает случайное число типа Float64, выбранное из распределения Пуассона. Синтаксис
randPoisson(n[, x])
Аргументы
  • n — Среднее число событий. UInt64
  • x — Необязательный аргумент, который игнорируется. Его единственное назначение — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется несколько раз в запросе. Any
Возвращаемое значение Возвращает случайное число Float64, полученное из указанного распределения Пуассона. UInt64 Примеры Пример использования
Query
SELECT randPoisson(10) FROM numbers(5)
Response
┌─randPoisson(10)─┐
│               8 │
│               8 │
│               7 │
│              10 │
│               6 │
└─────────────────┘

randStudentT

Добавленный в: v22.10.0 Возвращает случайное число типа Float64, взятое из t-распределения Стьюдента. Синтаксис
randStudentT(degree_of_freedom[, x])
Аргументы
  • degree_of_freedom — Число степеней свободы. Float64
  • x — Необязательный аргумент, который игнорируется. Его единственное назначение — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает случайное число типа Float64, сгенерированное из указанного t-распределения Стьюдента. Float64 Примеры Пример использования
Query
SELECT randStudentT(10) FROM numbers(5)
Response
┌─────randStudentT(10)─┐
│   1.2217309938538725 │
│   1.7941971681200541 │
│ -0.28192176076784664 │
│   0.2508897721303792 │
│  -2.7858432909761186 │
└──────────────────────┘

randUniform

Добавленный в: v22.10.0 Возвращает случайное число типа Float64, равномерно распределённое в интервале [min,max][\min, \max]. Синтаксис
randUniform(min, max[, x])
Аргументы
  • min — Левая граница диапазона (включительно). Float64
  • max — Правая граница диапазона (включительно). Float64
  • x — Необязателен и игнорируется. Единственная цель этого аргумента — предотвратить устранение общих подвыражений, когда один и тот же вызов функции используется несколько раз в запросе. Any
Возвращаемое значение Возвращает случайное число с равномерным распределением на интервале между min и max. Float64 Примеры Пример использования
Query
SELECT randUniform(5.5, 10) FROM numbers(5)
Response
┌─randUniform(5.5, 10)─┐
│    8.094978491443102 │
│   7.3181248914450885 │
│    7.177741903868262 │
│    6.483347380953762 │
│    6.122286382885112 │
└──────────────────────┘

randomFixedString

Добавленный в: v20.5.0 Генерирует случайную строку фиксированной длины с указанным количеством символов. Возвращаемые символы не обязательно являются ASCII-символами, то есть могут быть непечатными. Синтаксис
randomFixedString(length)
Аргументы
  • length — Длина строки в байтах. UInt*
Возвращаемое значение Возвращает строку, заполненную случайными байтами. FixedString Примеры Пример использования
Query
SELECT randomFixedString(13) AS rnd, toTypeName(rnd)
Response
┌─rnd──────┬─toTypeName(randomFixedString(13))─┐
│ j▒h㋖HɨZ'▒ │ FixedString(13)                 │
└──────────┴───────────────────────────────────┘

randomPrintableASCII

Добавленный в: v20.1.0 Генерирует случайную ASCII-строку указанной длины. Если передать length < 0, поведение функции не определено. Синтаксис
randomPrintableASCII(length[, x])
Аргументы
  • length — Длина строки в байтах. (U)Int*
  • x — Необязательный игнорируемый параметр. Единственное назначение этого аргумента — предотвращать устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает строку со случайным набором печатных символов ASCII. String Примеры Пример использования
Query
SELECT number, randomPrintableASCII(30) AS str, length(str) FROM system.numbers LIMIT 3
Response
┌─number─┬─str────────────────────────────┬─length(randomPrintableASCII(30))─┐
│      0 │ SuiCOSTvC0csfABSw=UcSzp2.`rv8x │                               30 │
│      1 │ 1Ag NlJ &RCN:*>HVPG;PE-nO"SUFD │                               30 │
│      2 │ /"+<"with:=LjJ Vm!c&hI*m#XTfzz │                               30 │
└────────┴────────────────────────────────┴──────────────────────────────────┘

randomString

Добавленный в: v20.5.0 Генерирует случайную строку с указанным количеством символов. Возвращаемые символы не обязательно относятся к ASCII, то есть могут быть непечатаемыми. Синтаксис
randomString(length[, x])
Аргументы
  • length — Длина строки в байтах. (U)Int*
  • x — Необязательный аргумент, который игнорируется. Его единственное назначение — предотвращать устранение общих подвыражений, когда один и тот же вызов функции используется в запросе несколько раз. Any
Возвращаемое значение Возвращает строку, заполненную случайными байтами. String Примеры Пример использования
Query
SELECT randomString(5) AS str FROM numbers(2)
Response
���
�v6B�

randomStringUTF8

Добавленный в: v20.5.0 Генерирует случайную UTF-8 строку с указанным количеством кодовых точек. Кодовые точки из неназначенных плоскостей (с 4-й по 13-ю) не возвращаются. Однако клиент, взаимодействующий с сервером ClickHouse, всё же может не суметь корректно отобразить полученную строку UTF-8. Синтаксис
randomStringUTF8(length)
Аргументы
  • length — Длина строки в кодовых точках. (U)Int*
Возвращаемое значение Возвращает строку из случайных кодовых точек UTF-8. String Примеры Пример использования
Query
SELECT randomStringUTF8(13)
Response
┌─randomStringUTF8(13)─┐
│ 𘤗𙉝д兠庇󡅴󱱎󦐪􂕌𔊹𓰛       │
└──────────────────────┘
Последнее изменение 10 июня 2026 г.