Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL:Obtendo colunas por prioridades de valor


Você pode usar duas junções à esquerda. Uma juntando todas as strings DE, uma para juntar todas as strings EN e, em seguida, adicione um IFNULL(de.text, en.text) no seu select
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