Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];

Вниз

RANDOM в ORACLE   Найти похожие ветки 

 
bas1   (2002-04-16 10:36) [0]

Есть-ли что-нибудь похожее в Oracle, или как взять случайное число в хрон. проц.


 
Val   (2002-04-16 10:41) [1]

как вариант: передать как параметр из приложения


 
Johnny Smith   (2002-04-16 11:03) [2]

Есть такой пакет в Оракле - DBMS_RANDOM.
Описание - в файле %ORA_HOME%rdbms80\admin\dbmsrand.sql


 
Johnny Smith   (2002-04-16 11:14) [3]

Вот и примерчик:

declare
x binary_integer;
begin
DBMS_RANDOM.initialize(234322);
x:=DBMS_RANDOM.random;
DBMS_RANDOM.terminate;
dbms_output.put_line(to_char(x));
end;
/


 
bas1   (2002-04-16 11:22) [4]

Огроменное спасибо


 
bas1   (2002-04-16 11:57) [5]

>>Johnny Smith
Я что-то не совсем понял - DBMS_RANDOM.random выводит одно и то же число и причем непонятно какое - я думал, что DBMS_RANDOM.initialize(хх) ставит предел выводимому значению, а он не понятно что ставит.


 
Johnny Smith   (2002-04-16 12:53) [6]

Я тут поподробнее поюзал это дело, и мне кажется, что здесь другое: initialize просто инициализирует работу пакета. Введенное число (размерностью не менее 5 знаков) просто -напросто является основой для того результата, который генерит функция DBMS_RANDOM.random.



 
bas1   (2002-04-16 13:56) [7]

а как быть если мене надо, например, случайное число в диапазоне от 0 до 10


 
Johnny Smith   (2002-04-16 14:08) [8]

Можно брать от результата функции какой-либо разряд (например, последнюю цифру) или хешировать этот результат


 
Johnny Smith   (2002-04-16 14:24) [9]

Я проконсультировался с нашим специалистом. Всплыло вот что: при инициализации ПЕРВЫЙ результат функции действительно постоянен при постоянном параметре в INITIALIZE. Зато потом идут нормальные :-) случайные числа. НО! До того момента, когда ты скажешь DBMS_RANDOM.terminate.


 
bas1   (2002-04-16 14:25) [10]

спасибо - буду думать


 
passm   (2002-04-16 15:26) [11]

С Oracle не работал, но если там чего-то не хватает, то почему бы не написать UDF? Здесь будет все в твоих руках.


 
bas1   (2002-04-16 16:36) [12]

>>passm
я уже сделал подругому
просто думал может есть что-то стандартное - зачем гордить огород, когда надо только цветок посадить
Да и не хотелось что-бы ф-ия работала долго



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.005 c
3-25997
viru$
2002-04-15 17:17
2002.05.09
Проблемка с IBEvents


4-26301
Геральт
2002-03-07 18:58
2002.05.09
Taskbar


14-26241
Sewix
2002-03-30 10:07
2002.05.09
Народ не вкурсе Paradox чье творение (компания)


14-26259
paul_shmakov
2002-04-01 12:27
2002.05.09
Ну наконец blue screen of death стал графическим :)


3-25998
Dimedrol
2002-04-09 15:56
2002.05.09
Все время этот LoginPrompt !





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский