Я использовал что-то подобное в проекте, в котором MySQL использовалась в качестве СУБД:
$ids = array(2,9,3,64,23,38); // example IDs
$qry->addOrderBy("FIND_IN_SET(q.id, '" . implode(",", $ids) . "')");
Это был проект, в котором значения в $ids
были известны и заслуживали доверия и были получены из поиска Xapian.запрос, который был упорядочен по релевантности поисковому запросу.Использование FIND_IN_SET()
позволило мне получить нужные документы и представить их в порядке актуальности на странице результатов поиска.
Отказ от ответственности: я не знаю уровень поддержки этой функции, нов то время меня это устраивало: -)