HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 05.04.2008, 01:58
VDShark
Участник форума
Регистрация: 01.02.2007
Сообщений: 286
С нами: 10143686

Репутация: 526
По умолчанию

Цитата:
Сообщение от d_x  
Из файла:

Из БД (запрос):

PHP код:
select какое_то_поле_со_строкой from какая_то_таблица order by rand() limit 1 
ИМХО наркманство... Это впринципе позволительно если таблица не большая, т.к. order by очень даже затратная операция. Представь что у тебя в таблице хотя бы 10-20к записей... И запрос довольно частый? Повесится можно. А если пару миллионов? То то же... Здесь нужен другой подход. Например если первичный ключ (или какое нить уникальное числовое значение) - числовое, то можно рандомно выбирать из этого диапазона (от минимального до максимального). Но опять таки встает проблема удаленных записей, т.е. отсутствия некоторых значений в диапазоне... Но и то десяток таких запросов в поиске существующего значения будут быстрее одного с ордером
 
Ответить с цитированием
 



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.