Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL:tabelle di unione per i record di traduzione

Continua a fare unioni a sinistra nella stessa tabella sull'ID, ma colonne extra che rappresentano la loro lingua...

Modificato per mostrare l'inglese se nessun valore nelle colonne corrispondenti per richiesta di commento.

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