Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
RAND() работает странно (Vanja) 12/05/2003 - 14:50:57
      Re: RAND() работает странно (Vanja) 12/05/2003 - 15:05:09
      Re: RAND() работает странно (Vanja) 12/05/2003 - 15:08:26
      Re: RAND() работает странно (dannis) 12/05/2003 - 15:48:37
      Re: RAND() работает странно (Валентин) 12/05/2003 - 15:59:44

> Original message text:
> From: Vanja - 12/05/2003 - 14:50:57
> Subject:RAND() работает странно
> -----------------
> Есть проблема, делаю запрос к таблице:
> SELECT * FROM `table` ORDER BY RAND() LIMIT 0,1
> выводит почему то все время последнюю запись
> делаю к другой таблице запрос все ок.
> может дело в строение таблицы?
>


From: Валентин - 12/05/2003 - 15:59:44
Subject:RAND() работает странно
-----------------
Из мануала:
RAND()
RAND(N)
Возвращает случайную величину с плавающей точкой в диапазоне от 0 до 1,0. Если целочисленный аргумент N указан, то он используется как начальное значение этой величины:
mysql> SELECT RAND();
-> 0.9233482386203

mysql> SELECT RAND(20);
-> 0.15888261251047

mysql> SELECT RAND(20);
-> 0.15888261251047

mysql> SELECT RAND();
-> 0.63553050033332

mysql> SELECT RAND();
-> 0.70100469486881

В выражениях вида ORDER BY не следует использовать столбец с величинами RAND(), поскольку применение оператора ORDER BY приведет к многократным вычислениям в этом столбце. В версии MySQL 3.23 можно, однако, выполнить следующий оператор: SELECT * FROM table_name ORDER BY RAND(): он полезен для получения случайного экземпляра из множества SELECT * FROM table1,table2 WHERE a=b AND c<d ORDER BY RAND() LIMIT 1000. Следует учитывать, что оператор RAND() в выражении WHERE при выполнении выражения WHERE будет вычисляться каждый раз заново. Оператор RAND() не следует воспринимать как полноценный генератор случайных чисел: это просто быстрый способ динамической генерации случайных чисел, переносимых между платформами для одной и той же версии MySQL.



[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
8457



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |