Du kan använda ORDER BY och FIELD-funktionen. Se http://lists.mysql.com/mysql/209784
SELECT * FROM table ORDER BY FIELD(ID,1,5,4,3)
Den använder Field() funktion, Som "Returnerar index (position) för str i str1, str2, str3, ... listan. Returnerar 0 om str inte hittas" enligt dokumentationen. Så faktiskt sorterar du resultatuppsättningen efter returvärdet för denna funktion som är indexet för fältvärdet i den givna uppsättningen.