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

Obtendo traduções de uma tabela sempre incluindo todos os idiomas, mesmo que não haja tradução para ela


Você precisará criar todas as combinações de translations e translation_languages em uma subconsulta. Em seguida, faça um LEFT JOIN para translation_details no código de tradução e no idioma.
SELECT
    * 
FROM
(
  SELECT * 
  FROM translations AS t
  CROSS JOIN translation_languages AS tl
) AS dt 
LEFT JOIN translation_details AS td ON td.translation_id = dt.id 
                                       AND td.language_code = dt.language_code