Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Sergei 10.12.2002 15:28
... но это только в качестве идеи (по быстродействию не знаю будет ли быстрее - не проверял) и сам прмер Sql-запроса написал на Access-овском диалекте SQL - т.ч. потребуется немного адаптровать его к MySQL или к чему там вам надо. Идея простая - отбираем записи из базы и делаем ещё одно вычисляемое поле (используем функцию RND и в качестве параметра передаём например значение поля id - иначе если вызывать только Rnd() без параметра, то получим столбец одинаковых значений) и упорядочваем по RND - всё остальное получается в разнабой. Осталось только взять нужное кол-во первых записей.SELECT [id],[name], Rnd([id]) AS x1 FROM tab1 ORDER BY Rnd([id]);Ещё раз предупреждаю: насколько это будет быстро работать не знаю, но в принце для небольших таблиц должно работать нормально.