Доступные версии документации

Псевдослучайное значение

Функция

Получить псевдослучайное число.

Спецификация
 
<синтаксис>::=
Синтаксические правила
  1. <Числовое выражение> должно иметь тип данных REAL или приводиться к нему.

  2. <Числовое выражение> задает создание последовательности псевдослучайных чисел, генерируемых на его основе.

  3. Если <числовое выражение> положительное число, то оно и является основанием последовательности, если отрицательное – основанием последовательности является текущая дата.

Общие правила
  1. Последовательность псевдослучайных значений инициализируется:

    • при первом выполнении функции RAND с аргументом;

    • при первом после запуска СУБД ЛИНТЕР выполнении функции RAND без аргумента. В этом случае за основание последовательности псевдослучайных значений принимается 1.

  2. Для получения очередного псевдослучайного значения функция RAND должна вызываться без аргумента.

  3. Функция RAND с одним и тем же положительным значением <числового выражения> будет всегда генерировать одинаковую последовательность псевдослучайных значений.

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

Псевдослучайное значение типа REAL в диапазоне от 0 до 1.

Пример

Инициирование последовательности и получение первого псевдослучайного значения из последовательности с данным основанием:

select rand(5);
|     0.430684101037068|

Получение псевдослучайного значения:

select rand();
|     0.430684101037068|

Инициирование последовательности и получение первого псевдослучайного значения из последовательности с другим основанием:

select rand(79);
|     0.404723714294249|

Получение псевдослучайного значения:

select rand();
|     0.528760920990613|

Воспроизведение псевдослучайных значений для последовательности с первоначальным основанием:

select rand(5);
|     0.430684101037068|

Получение псевдослучайного значения:

select rand();
|    0.0522177750487895|
Заметили ошибку?
Выделите текст и нажмите Ctrl + Enter