Здравствуйте!
Есть запрос:
SELECT user_id, user, title FROM table WHERE id IN ('.$id_list.') ORDER BY FIELD(id, '.$id_list.')
$id_list - Массив состоит из 100 id-шников (которые всегда меняются).
Я подумал, что нужно как-то ускорить запрос и кое-что переложить на плечи PHP (получать данные из MySQL в массив и сортировать их PHP).
Сделал запрос без ORDER BY FIELD:
SELECT user_id, user, title FROM table WHERE id IN ('.$id_list.')
Для теста времени выполнения запросов к MySQL я запустил скрипт из 1000 запросов (с разными $id_list массивами).
Что интересно время выполнения запросов к MySQL что в первом случае с ORDER BY FIELD, что во втором случае (сортировка с помощью PHP) - время выполнения одно и тоже.
Неужели ORDER BY FIELD при текущем раскладе совсем не тормозит MySQL? Вроде бы включается сортировка по полю и требуется больше времени.
Все, что хотел - это всеми способами попробовать снять нагрузку с MySQL. А так - хоть оставляй этот ORDER BY FIELD... Снижения никакого нет.