方法3と同様:
[languages]
id (int PK)
code (varchar)
[products]
id (int PK)
neutral_fields (mixed)
[products_t]
id (int FK)
language (int FK)
translated_fields (mixed)
PRIMARY KEY: id,language
したがって、テーブルごとに、変換されたフィールドを保持する別のテーブル(私の場合は「_t」サフィックスを使用)を作成します。SELECT * FROM products
、単に... LEFT JOIN products_t ON products_t.id = products.id AND products_t.language = CURRENT_LANGUAGE
。
それほど難しくはなく、頭痛の種から解放されます。