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

Ottenere traduzioni da una tabella includendo sempre tutte le lingue anche se non esiste una traduzione per essa

Dovrai creare tutte le combinazioni di translations e translation_languages in una sottoquery. Quindi, fai un LEFT JOIN a translation_details sull'ID traduzione e sulla lingua.

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