RAND (Transact-SQL)
Devuelve un valor float pseudoaleatorio de 0 a 1. ambos excluidos.
Sintaxis
RAND ( [ seed ] )
Argumentos
- seed
Es una expresión de tipo entero (tinyint, smallint o int) que proporciona el valor de inicialización. Si no se especifica seed, SQL Server Database Engine (Motor de base de datos de SQL Server) asigna un valor de inicialización de forma aleatoria. Para un valor de inicialización especificado, el resultado devuelto es siempre el mismo.
Tipos de valor devueltos
float
Notas
Las llamadas repetitivas de RAND() con el mismo valor de inicialización devuelven los mismo resultados.
Para una conexión, si se llama a RAND() con el valor de inicialización especificado, todas las llamadas posteriores de RAND() generan resultados basados en la llamada a RAND() inicializada. Por ejemplo, la siguiente consulta siempre devuelve la misma secuencia de números.
SELECT RAND(100), RAND(), RAND()
Ejemplos
En el siguiente ejemplo se producen cuatro números aleatorios diferentes, generados con la función RAND.
DECLARE @counter smallint;
SET @counter = 1;
WHILE @counter < 5
BEGIN
SELECT RAND() Random_Number
SET @counter = @counter + 1
END;
GO