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

Mysql:juntando tabelas para registros de tradução


Apenas continue fazendo junções à esquerda na mesma tabela no ID, mas colunas extras representando seu idioma ...

Editado para mostrar inglês se não houver valor nas colunas correspondentes por consulta de comentário.
select 
      eng.id,
      eng.translated_text InEnglish,
      coalesce( spn.translated_text, eng.translated_text ) InSpanish,
      coalesce( frn.translated_text, eng.translated_text )  InFrench
   from
      translation eng
         left join translation spn
            on eng.id = spn.id
            and spn.Language_ID = 2
         left join translation frn
            on eng.id = frn.id
            and spn.Language_ID = 3
   where
      eng.Language_id = 1
   order by 
      eng.id