MySQL: выбрать новости с определёнными id соблюдая порядок
5 марта 2009
Задача: выбрать новости с id = [2, 10, 3, 88, 23] соблюдая порядок.
SELECT * FROM news WHERE id IN (2, 10, 3, 88, 23) ORDER BY FIELD (id, 2, 10, 3, 88, 23)
5 марта 2009
Задача: выбрать новости с id = [2, 10, 3, 88, 23] соблюдая порядок.
SELECT * FROM news WHERE id IN (2, 10, 3, 88, 23) ORDER BY FIELD (id, 2, 10, 3, 88, 23)
© 2005—2025, Александр Макаров (Sam Dark)
~ дизайн: fazeful design //Отработало за 0.01128 с. Скушано памяти: 0.74MB
Комментарии RSS по email OK
Очень позновательно, спасибо.
А для чего такое может быть нужно ?
daedmen
Например, если необходимо упорядочить записи по каким-то текстовым значениям, перечень которых ограничен (названия ролей к примеру).
@daedmen
Это очень полезно при разоте с Sphinx - он выдает ID документов отсортированных по релеватности, и нам при помощи этого запроса остается только вывести результат. Ну очень удобно )
Спасибо, то что искал. Версия MySQL роли не играет?
Или ORDER BY FIND_IN_SET(id, '2,10,3,88,23')
...или ORDER BY id = 2 DESC, id = 10 DESC, id = 3 DESC, id = 88 DESC, id = 23 DESC
Спасибо!
Очень помогло. Websash