RAND (Transact-SQL)

Возвращает псевдослучайное значение типа float от 0 до 1.

Применимо для следующих объектов: SQL Server (SQL Server 2008 по текущую версию), База данных SQL Windows Azure (С первоначального выпуска по текущий выпуск).

Значок ссылки на раздел Cинтаксические обозначения в Transact-SQL

Синтаксис

RAND ( [ seed ] )

Аргументы

  • seed
    Целочисленное выражение (tinyint, smallint или int), задающее начальное значение. Если аргумент seed не указан, компонент Компонент SQL Server Database Engine использует случайное начальное значение. Для указанного начального значения возвращаемый результат всегда будет один и тот же.

Типы возвращаемых данных

float

Замечания

Повторные вызовы RAND() с одинаковым начальным значением возвращают одинаковые результаты.

Для одного соединения, если RAND() вызван с конкретным начальным значением, все последующие вызовы RAND() выдадут результат, основанный на начальном вызове RAND(). Например, следующий запрос всегда будет возвращать ту же последовательность чисел.

SELECT RAND(100), RAND(), RAND() 

Примеры

Следующий пример выдает четыре различных случайных числа, сформированных функцией RAND.

DECLARE @counter smallint;
SET @counter = 1;
WHILE @counter < 5
   BEGIN
      SELECT RAND() Random_Number
      SET @counter = @counter + 1
   END;
GO

См. также

Справочник

Математические функции (Transact-SQL)