【发布时间】:2017-04-12 08:57:28
【问题描述】:
我有 2 个表 A 和 B。我想创建第三个表,C。C 必须包含 A 中但不在 B 中的每条记录,以及 A 和 B 中的每条记录。
我尝试了以下方法:
SELECT A.* INTO C FROM (A INNER JOIN B ON A.Id = B.Id) LEFT JOIN B ON A.Id = B.Id WHERE B.Id IS NULL;
但它给了我错误信息:JOIN expression not supported.
当只有INNER JOIN 或LEFT JOIN 时,它可以完美运行。但是由于某种原因,当我将两者与括号结合时,它不起作用。
如果有帮助的话,我相信我正在使用 MS-Access 2013。 顺便说一句,我是 Access 和 SQL 新手。
【问题讨论】:
-
根据documentation,您不能在外连接操作数中嵌套连接。但是(如在标准 SQL 中但未记录)您可以在
FROM中使用T A INNER JOIN U Bas with,其中 T 是基本名称或子选择。,计算CROSS JOIN即INNER JOIN ON 1=1但绑定比JOINs 松散。
标签: sql ms-access left-join inner-join