Последние записи
- Как запустить программу указанную в Edit.Text
- Скачать файл с использованием потока
- Поиск слова в Memo
- Распаковщик формата .img из GTA San Andreas
- Подсчет количества повторяющихся букв в файле
- Простейший скрипт загрузки картинки с помощью php
- Рассылка. Выпуск 154
- Получение картинки с веб-камеры
- Скопировать определённый кусок image
- Сделать printscreen экрана и сохранить
30th
Май
Как случайно выбрать данные из бд?
Posted by Chas under Пост-обзор
как из базы средствами mysql выдернуть случайные записи. Т.е. допустим я функции передал, сколько мне нужно записей. Дак как мне выдернуть их случайно.
Johnatan:
ORDER BY RAND() – забудьте про это. Была б моя воля – вообще уничтожил бы эту конструкцию, чтоб она не работала вообще.
Слишком медленно она работает.
Самый лучший вариант выборки случайных записей из базы -
SELECT `t`.*
FROM (
SELECT FLOOR (RAND() * (
SELECT count(*) FROM `table`
)) num ,@num:=@num+1 from (
SELECT @num:=0
) a , `table` LIMIT 5
) b , `table` t WHERE b.num=t.`id`
, где 5 – это число строк, которое необходимо вытащить, `table` таблица откуда нужно вытащить.

