Je zou het kunnen doen met FIND_IN_SET , bijv.
SELECT * FROM T WHERE T.id IN(4,78,12,45)
ORDER BY FIND_IN_SET(T.id,'4,78,12,45');
Hoewel u de lijst wel moet dupliceren, is dit geen groot probleem als u de query in code genereert.
Je zou het kunnen doen met FIND_IN_SET , bijv.
SELECT * FROM T WHERE T.id IN(4,78,12,45)
ORDER BY FIND_IN_SET(T.id,'4,78,12,45');
Hoewel u de lijst wel moet dupliceren, is dit geen groot probleem als u de query in code genereert.