È possibile utilizzare la funzione ORDINA PER e CAMPO. Vedere http://lists.mysql.com/mysql/209784
SELECT * FROM table ORDER BY FIELD(ID,1,5,4,3)
Utilizza Field() funzione, che "Restituisce l'indice (posizione) di str nella lista str1, str2, str3, .... Restituisce 0 se str non viene trovato" secondo la documentazione. Quindi in realtà ordini il set di risultati in base al valore di ritorno di questa funzione che è l'indice del valore del campo nel set specificato.