MySQL ha una pratica funzione chiamata FIELD()
che è eccellente per compiti come questo.
ORDER BY FIELD(Language,'ENU','JPN','DAN'), ID
Si noti tuttavia che
-
Rende il tuo SQL meno portabile, poiché altri DBMS potrebbero non avere tale funzione
-
Quando il tuo elenco di lingue (o altri valori in base a cui ordinare) diventa molto più lungo, è meglio avere una tabella separata con una colonna di ordinamento per loro e unirla alle tue query per l'ordine.