Puoi usare due join a sinistra. Uno per unire tutte le stringhe DE, uno per unire tutte le stringhe EN e quindi aggiungere un IFNULL(de.text, en.text) nella tua selezione
selectr tblkeys.idkey, ifnull(de.translation, en.translation)
from tblkeys
left join
(select idkey, translation from tbltranslations where tbltranslations.dtlanguage = 'de') de
on de.idkey = tblkeys.idkey
left join
(select idkey, translation from tbltranslations where tbltranslations.dtlanguage = 'en') en
on en.idkey = tblkeys.idkey