MySQL ma przydatną funkcję o nazwie FIELD()
co jest doskonałe do takich zadań.
ORDER BY FIELD(Language,'ENU','JPN','DAN'), ID
Należy jednak pamiętać, że
-
To sprawia, że Twój SQL jest mniej przenośny, ponieważ inne DBMS mogą nie mieć takiej funkcji
-
Gdy lista języków (lub innych wartości do sortowania) jest znacznie dłuższa, lepiej mieć dla nich osobną tabelę z kolumną sortorder i dołączyć ją do zapytań w celu uporządkowania.