Ок! с целью оптимизации скрипта вместо конструкции WHERE ... ORDER BY RAND() LIMIT 6;
применяю 2 запроса:
1) поиск всех ид по условию, перемешиваю их и формирую например:
$in = 12,87,24,65,230,8
2) запрашиваю WHERE id IN ($in);
Скорость выполнения возрастает почти в 7(!) раз.
Единственное что, мускул сортирует результат по ид по порядку, а мне надо чтобы он выводил как я указываю в $in т.е. в разнобой. Есть ли такой способ?
|