rand
Содержание
RAND()
Версии сервера
0.9 | 1.0 | 1.5.3 | 1.5.4 | 1.5.5 | 2.0 | 2.1 | 2.5 | 3.0 | |
---|---|---|---|---|---|---|---|---|---|
Как UDF | Да | Да | Да | Да | Да | Да | - | - | - |
Как встроенная функция | - | - | - | - | - | - | Да | Да | Да |
Доступно в
Формат
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';
2. В 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
2) Псевдослучайное число в интервале [1..100]
SELECT TRUNC(RAND() * 100) FROM RDB$DATABASE
3) Псевдослучайное число в интервале [1..123456]
SELECT TRUNC(RAND() * 123456) FROM RDB$DATABASE
См. также
Источник
langref.pdf
rand.txt · Последнее изменение: 2010/01/10 17:03 — peaktop
Обсуждение