左内连接5个表

时间:2017-06-29 12:02:41

标签: sql ms-access

我试图离开内连接5个表。我选择了4列,然后我写了

FROM table_a 
LEFT INNER JOIN table_b 
LEFT INNER JOIN table_c 
LEFT INNER JOIN table_d 
ON table_a.a = table_b.a, 
table_b.c=table_c.c, 
table_c.b=table_d.b

但是当我尝试在Access 2007中的SQL上运行它时,它告诉我FROM代码中存在错误。我真的不知道我做错了什么。

感谢您提供任何帮助。

1 个答案:

答案 0 :(得分:3)

MS Access需要围绕联接括号:

EntityA

如果您打算FROM ((table_a LEFT JOIN table_b ON table_a.a = table_b.a ) LEFT INNER JOIN table_c ON table_b.c = table_c.c ) LEFT JOIN table_d ON table_c.b = table_d.b ,请将INNER JOIN替换为LEFT JOIN

另外:

  • 没有INNER JOIN这样的东西。
  • MS Access使用LEFT INNER JOIN进行左外连接。
  • 您应该在LEFT JOIN之后的表/子查询之后立即放置ON子句。
  • 内部和外部联接都需要括号。