RAND()

Версии сервера

0.91.01.5.31.5.41.5.52.02.12.53.0
Как UDFДаДаДаДаДаДа---
Как встроенная функция------ДаДаДа

Доступно в

DSQL, ISQL, PSQL

Формат

RAND()
АргументОписание
ВозвращаетDOUBLE PRECISION

Описание

Функция RAND() возвращает псевдослучайное число, равномерно распределенное в интервале от [0..1].

⚠️ В Firebird версии младше 2.1 для того, чтобы пользоваться этой функцией, ее необходимо подключить к базе данных как UDF.

Объявление

  1. В Firebird версии младше 2.1 функция объявляется как UDF в внешнем модуле “ib_udf”.
DECLARE EXTERNAL FUNCTION RAND
RETURNS 
  DOUBLE PRECISION BY VALUE
ENTRY_POINT 'IB_UDF_rand' MODULE_NAME 'ib_udf';
  1. В Firebird версии 2.1 и старше является встроенной функцией при соглашении объявления ее как:
DECLARE EXTERNAL FUNCTION RAND
RETURNS 
  DOUBLE PRECISION BY VALUE
ENTRY_POINT 'IB_UDF_rand' MODULE_NAME 'SYSTEM';

Пример

  1. Псевдослучайное число в интервале [0..1]
SELECT RAND() FROM RDB$DATABASE
  1. Псевдослучайное число в интервале [1..100]
SELECT TRUNC(RAND() * 100) FROM RDB$DATABASE
  1. Псевдослучайное число в интервале [1..123456]
SELECT TRUNC(RAND() * 123456) FROM RDB$DATABASE

См. также

UDF, Встроенные функции, TRUNC()

Источник

langref.pdf

Обсуждение