Possible Duplicate:
quick selection of a random row from a large table in mysql
Я видел случайные строки, извлекаемые с помощью подобных запросов, которые довольно неэффективны для больших наборов данных.
SELECT id FROM table ORDER BY RANDOM() LIMIT 1
Я также видел различные другие решения для СУБД, которые не работают с MySQL.
Лучшее, что я могу придумать для себя, - это использовать два запроса и делать что-то вроде этого.
Вот SQL:
SELECT COUNT(*) FROM table;
SELECT id FROM table LIMIT randnum, 1;
Есть ли у кого-нибудь идеи получше?