Descripción: Devuelve un número al azar que se encuentra entre 0 y 1

Tipo de resultado: Doble precisión

Sintaxis:

RAND()

Ejemplo1:

SELECT
   RAND()
FROM
   RDB$DATABASE

Este SELECT devolverá un número al azar entre 0 y 0.99999999…

Ejemplo 2:

SELECT
   FLOOR(RAND() * 100)
FROM
   RDB$DATABASE

Este SELECT devolverá un número entero comprendido entre 0 y 99. ¿Por qué? Porque el menor valor posible es 0 y hay 100 valores posibles, por lo tanto el mayor número que puede devolver es 99.

Ejemplo 3:

SELECT
   FLOOR(RAND() * 101)
FROM
   RDB$DATABASE

Este SELECT devolverá un número entero comprendido entre 0 y 100. ¿Por qué? Porque el menor valor posible es 0 y hay 101 valores posibles, por lo tanto el mayor número que puede devolver es 100.

Ejemplo 4:

SELECT
   1 + FLOOR(RAND() * 100)
FROM
   RDB$DATABASE

Este SELECT devolverá un número entero comprendido entre 1 y 100. ¿Por qué? Porque el menor valor posible es 1 y hay 100 valores posibles, por lo tanto el mayor número que puede devolver es 100.

Artículos relacionados:

El índice del blog Firebird21

El foro del blog Firebird21