使用 SQL 查询连接 3 个表?

dee*_*epz 4 ms-access

我在加入三个表时遇到问题。当我使用相同的查询连接两个表(删除后LEFT OUTER JOIN C ON B.No = C.No)时,它运行良好。但是,当我使用三个表时它不起作用。

这是我的查询

SELECT A.Name, B.Quantity, C.Quantity 
FROM A 
LEFT OUTER JOIN B 
    ON A.ID = B.ID 
LEFT OUTER JOIN C 
    ON B.No = C.No; 
Run Code Online (Sandbox Code Playgroud)

ype*_*eᵀᴹ 7

MS-Access 对如何形成连接相当挑剔。添加括号:

SELECT A.Name, B.Quantity, C.Quantity 
FROM 
  ( A LEFT OUTER JOIN B ON A.ID = B.ID )
  LEFT OUTER JOIN C ON B.No = C.No ;
Run Code Online (Sandbox Code Playgroud)

标准 SQL 语法 - 以及大多数其他 DBMS - 不需要在FROM子句中使用括号,尽管为了清楚起见,您可以使用它们。

  • 大多数其他 DBMS 不需要这些(理所当然地需要)。 (4认同)