Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有空行的3个表之间的SQL联接_Sql_Join - Fatal编程技术网

具有空行的3个表之间的SQL联接

具有空行的3个表之间的SQL联接,sql,join,Sql,Join,我需要保存短语的语言翻译。我创建了3个表,一个用于短语,一个用于语言,一个用于翻译,详细信息如下: 语言-名称和id 短语-名称和id 翻译-id、翻译、fk_语言和fk_短语 当我获得所有存在的短语以及特定语言的所有翻译时,如何创建查询。如果没有翻译,我仍然希望所有的短语都在那里。 该网页有一个下拉列表,用于选择语言,然后输入所有短语的翻译,然后使用一个保存按钮保存所有翻译 谢谢。您可以使用左键加入: select p.*, t.* from phrases p left join

我需要保存短语的语言翻译。我创建了3个表,一个用于短语,一个用于语言,一个用于翻译,详细信息如下:

  • 语言-名称和id
  • 短语-名称和id
  • 翻译-id、翻译、fk_语言和fk_短语
  • 当我获得所有存在的短语以及特定语言的所有翻译时,如何创建查询。如果没有翻译,我仍然希望所有的短语都在那里。 该网页有一个下拉列表,用于选择语言,然后输入所有短语的翻译,然后使用一个保存按钮保存所有翻译


    谢谢。

    您可以使用
    左键加入:

    select p.*, t.*
    from phrases p left join
         (translations t join
          languages t
          on t.fk_language = l.id and l.language = 'XXX'
         )
         on t.fk_phrase = p.id ;
    

    这是一个有趣的例子,在
    FROM
    子句中使用括号是编写查询的合理方式。

    请提供示例数据、所需结果和适当的数据库标记。