Инструменты пользователя

Инструменты сайта


Боковая панель

Введение

Статьи и часто задаваемые вопросы

Установка и настройка

Обработка ошибок

Полезные запросы SQL

Тематические группы

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