SQL - 如何多个连接

时间:2017-07-20 21:03:12

标签: sql

我有4个表:table1,table2,table3,table4。 table1包含与所有其他表(2,3,4)相关的id值,我想连接所有这些表以将所有数据放在一个集合中,我认为这是简单的关系。

我尝试了这个,但我不知道它为什么不起作用:

SELECT * FROM 'table1'
JOIN 'table2' ON 'table1.id_forT2'='table2.id'
JOIN 'table3' ON 'table1.id_forT3'='table3.id'
JOIN 'table4' ON 'table1.id_forT4'='table4.id'
WHERE 'table1.id' = 30

当我只离开一个连接时它工作正常,有2或3个连接它会返回错误。怎么做?提前致谢

2 个答案:

答案 0 :(得分:0)

我认为只是因为你的蜱不在正确的位置。这是MySQL吗?因为那时你想要反蜱而不是单引号。

SELECT * FROM `table1`
JOIN `table2` ON `table1`.id_forT2=`table2`.id
JOIN `table3` ON `table1`.id_forT3=`table3`.id
JOIN `table4` ON `table1`.id_forT4=`table4`.id
WHERE `table1`.id = 30

答案 1 :(得分:0)

这可能是因为有两个原因:

  1. 行情/倒退:也许您没有正确使用
  2. 使用LEFT JOIN代替JOIN:也许一个表没有关系数据
  3. 您应该指定是否使用mySQLpostgreSQL或其他。