Función RAND() en SQL Server

Función RAND():
esta función en SQL Server se usa para devolver un valor decimal aleatorio y este valor se encuentra en el rango mayor que e igual a cero (> = 0) y menor que 1. Si queremos obtener un entero aleatorio R en el rango i <= R < j, tenemos que usar la expresión “ FLOOR(i + RAND() * (j − i))”.

Características :

  • Esta función se utiliza para dar un valor decimal aleatorio.
  • El valor devuelto se encuentra entre 0 (inclusive) y 1 (exclusivo).
  • Si esta función no acepta ningún parámetro, devolverá un número completamente aleatorio.
  • Si esta función toma un parámetro, devolverá una secuencia repetible de números aleatorios.
  • Esta función acepta parámetros opcionales.
  • Esta función usa una fórmula
    “FLOOR(i + RAND() * (j − i))” para obtener un número entero aleatorio R,
    donde R se encuentra en el rango de “i <= R < j”.

Sintaxis:

RAND(N)

Parámetro:
este método acepta un parámetro como se indica a continuación:

  • N : si se especifica N, devuelve una secuencia repetible de números aleatorios. Si no se especifica N, devuelve un número completamente aleatorio. Es opcional y funciona como un valor inicial.

Devoluciones:
Devuelve un número aleatorio entre 0 (inclusive) y 1 (exclusivo).

Ejemplo-1:
Obtener un valor aleatorio entre 0 y 1.

SELECT RAND();

Producción :

0.37892290119984562

Ejemplo-2:
Obtener un número decimal aleatorio con valor inicial de 5.

SELECT RAND(5);

Producción :

0.71366652509795636

Ejemplo-3:
Usar la función RAND() con variables y obtener un número aleatorio entre [2, 8] usando la función RAND. Aquí, usaremos la expresión: FLOOR(i + RAND() * (j − i)) para generar el número aleatorio. Aquí, i es 2 y j es 8.

DECLARE @i INT;
DECLARE @j INT;
SET @i = 2;
SET @j = 8;
SELECT FLOOR(@i + RAND()*(@j-@i));

Producción :

7.0

Ejemplo-4:
obtener un valor aleatorio entre el rango [3, 9] usando la función RAND. Aquí, usaremos la expresión: FLOOR(i + RAND() * (j − i + 1)) para generar el número aleatorio. Aquí i es 3 y j es 9.

SELECT FLOOR(3 + RAND()*(9 - 3 + 1));

Producción :

9.0

Aplicación:
esta función se utiliza para devolver un número aleatorio entre 0 (inclusive) y 1 (exclusivo).

Publicación traducida automáticamente

Artículo escrito por Kanchan_Ray y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *