RAND (Transact-SQL)
Retorna um valor float pseudo-aleatório de 0 a 1, exclusivo.
Sintaxe
RAND ( [ seed ] )
Argumentos
- seed
É uma expressão inteira (tinyint, smallint ou int) que fornece o valor de semente. Se seed não estiver especificado, o Mecanismo de banco de dados do SQL Server atribuirá um valor de semente aleatório. Para um valor de semente especificado, o resultado retornado é sempre o mesmo.
Tipos de retorno
float
Comentários
Chamadas repetitivas de RAND() com o mesmo valor de semente retornam os mesmos resultados.
Para uma conexão, se RAND() for chamada com uma valor de semente especificado, todas as chamadas subseqüentes de RAND() produzirão resultados com base na chamada de RAND() propagada. Por exemplo, a consulta a seguir sempre retornará a mesma seqüência de números.
SELECT RAND(100), RAND(), RAND()
Exemplos
O exemplo a seguir produz quatro números aleatórios diferentes que são gerados pela função RAND.
DECLARE @counter smallint;
SET @counter = 1;
WHILE @counter < 5
BEGIN
SELECT RAND() Random_Number
SET @counter = @counter + 1
END;
GO