Vous pouvez trier par une valeur dérivée d'une colonne. Vous pouvez utiliser un CAS opérateur pour spécifier la commande :
SELECT * FROM table
WHERE id IN (3,6,1,8,9)
ORDER BY CASE id WHEN 3 THEN 1
WHEN 6 THEN 2
WHEN 1 THEN 3
WHEN 8 THEN 4
WHEN 9 THEN 5
END