mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-17 05:03:20 +00:00
f2e2e993e5
* DOCSUP-778 (#111) * docs(randConstant): add description * docs(randConstant): edit link * docs(randConstant): corrections after review * docs(randConstant): add description in Russian Co-authored-by: egilmanova <egilmanova@yandex-team.ru> * CLICKHOUSEDOCS-289: Updated descriptions. * CLICKHOUSEDOCS-289: Fixed links. * Update docs/ru/sql-reference/functions/random-functions.md Co-authored-by: Ilya Yatsishin <2159081+qoega@users.noreply.github.com> * Update docs/en/sql-reference/functions/random-functions.md Co-authored-by: Ivan Blinkov <github@blinkov.ru> Co-authored-by: egilmanova <63861789+egilmanova@users.noreply.github.com> Co-authored-by: egilmanova <egilmanova@yandex-team.ru> Co-authored-by: Sergei Shtykov <bayonet@yandex-team.ru> Co-authored-by: Ilya Yatsishin <2159081+qoega@users.noreply.github.com> Co-authored-by: Ivan Blinkov <github@blinkov.ru>
59 lines
3.3 KiB
Markdown
59 lines
3.3 KiB
Markdown
# Функции генерации псевдослучайных чисел {#functions-for-generating-pseudo-random-numbers}
|
||
|
||
Используются не криптографические генераторы псевдослучайных чисел.
|
||
|
||
Все функции принимают ноль аргументов или один аргумент.
|
||
В случае, если передан аргумент - он может быть любого типа, и его значение никак не используется.
|
||
Этот аргумент нужен только для того, чтобы предотвратить склейку одинаковых выражений - чтобы две разные записи одной функции возвращали разные столбцы, с разными случайными числами.
|
||
|
||
## rand {#rand}
|
||
|
||
Возвращает псевдослучайное число типа UInt32, равномерно распределённое среди всех чисел типа UInt32.
|
||
Используется linear congruential generator.
|
||
|
||
## rand64 {#rand64}
|
||
|
||
Возвращает псевдослучайное число типа UInt64, равномерно распределённое среди всех чисел типа UInt64.
|
||
Используется linear congruential generator.
|
||
|
||
## randConstant {#randconstant}
|
||
|
||
Создает константный столбец с псевдослучайным значением.
|
||
|
||
**Синтаксис**
|
||
|
||
``` sql
|
||
randConstant([x])
|
||
```
|
||
|
||
**Параметры**
|
||
|
||
- `x` — [Выражение](../syntax.md#syntax-expressions), возвращающее значение одного из [поддерживаемых типов данных](../data-types/index.md#data_types). Значение используется, чтобы избежать [склейки одинаковых выражений](index.md#common-subexpression-elimination), если функция вызывается несколько раз в одном запросе. Необязательный параметр.
|
||
|
||
**Возвращаемое значение**
|
||
|
||
- Псевдослучайное число.
|
||
|
||
Тип: [UInt32](../data-types/int-uint.md).
|
||
|
||
**Пример**
|
||
|
||
Запрос:
|
||
|
||
``` sql
|
||
SELECT rand(), rand(1), rand(number), randConstant(), randConstant(1), randConstant(number)
|
||
FROM numbers(3)
|
||
```
|
||
|
||
Результат:
|
||
|
||
``` text
|
||
┌─────rand()─┬────rand(1)─┬─rand(number)─┬─randConstant()─┬─randConstant(1)─┬─randConstant(number)─┐
|
||
│ 3047369878 │ 4132449925 │ 4044508545 │ 2740811946 │ 4229401477 │ 1924032898 │
|
||
│ 2938880146 │ 1267722397 │ 4154983056 │ 2740811946 │ 4229401477 │ 1924032898 │
|
||
│ 956619638 │ 4238287282 │ 1104342490 │ 2740811946 │ 4229401477 │ 1924032898 │
|
||
└────────────┴────────────┴──────────────┴────────────────┴─────────────────┴──────────────────────┘
|
||
```
|
||
|
||
[Оригинальная статья](https://clickhouse.tech/docs/ru/query_language/functions/random_functions/) <!--hide-->
|