3列のテーブルがあります:label_value, language_value, language
. これはラベルのテーブルで、ラベルの場所label_value = "name"
、language_value - ラベルの翻訳、language - 使用している言語の ID です。したがって、英語 (language=45) と自分の言語 (language=24) の を抽出する必要がlabel_value
ありlanguage_value
ますlanguage_value
。すべての英語のラベルが私の言語に翻訳されているわけではありませんが、すべての英語のラベルを抽出する必要があることに注意してください。ラベルに私の英語への翻訳がない場合は、このラベルをlanguage_value
私の言語に NULL で返す必要があります。したがって、次のコードを作成しました。
SELECT e.label_value, e.language_value
FROM labels e, labels t
WHERE e.label_value=t.label_value AND e.language=45 AND t.language=24
すべての英語のラベルが返されたわけではなく、一部のラベルが 2 回返されたわけではないため、完全で正しいクエリではないことを理解しています。編集してください。ありがとうございました。
更新しました:
また、ロケールのクエリが t.approved='1' または t.user_id=123 という条件を満たす必要があります。