MySQL сортируется по определенному списку

У меня есть список номеров: 7,1,3,2,123,55 (которые являются идентификаторами существующих записей)

У меня есть таблица mysql с id и name colums, где id является целым первичным ключом. Я хочу выбрать записи из этой таблицы, но в определенном порядке, например, 7 , 1 , 3 , 2 , 123 , 55 .

  • Возможно ли это сделать в MyISAM в запросе без какой-либо последующей обработки?
  • Каков самый простой способ сделать это?

Поскольку 1 < 3 < 77 < 123 , достаточно простого ORDER BY id .

Если, однако, вы хотите заказать такой способ: 77, 3, 123, 1 , то вы можете использовать функцию FIELD() :

 SELECT id, name FROM mytable WHERE id IN (77, 3, 123, 1) ORDER BY FIELD(id, 77, 3, 123, 1)