Applies ToMicrosoft 365 专属 Access Access 2024 Access 2021 Access 2019 Access 2016

如果在 FROM 子句中使用了源表记录,请将这些记录合并在一起。

语法

FROM table1 [ LEFT | RIGHT ] JOIN table2ON table1.field1compopr table2.field2

LEFT JOIN 和 RIGHT JOIN 操作包含以下部分:

部分

说明

table1, table2

对其中的记录进行组合的表的名称。

field1, field2

要联接的字段的名称。 这些字段必须属于相同的数据类型,并且包含相同种类的数据,但它们不需要有相同的名称

compopr

任何关系比较运算符:“=”、“<”、“>”、“<=”、“>=”或“<>”。

备注

使用 LEFT JOIN 操作来创建 左外部联接。 左外部联接包含两表中第一个表(左)中的所有记录,即使没有与第二个(右)表中的记录相匹配的值也是如此。

使用 RIGHT JOIN 操作来创建 右外部联接。 右外部联接包含两表中第二个表(右)中的所有记录,即使没有与第一个(左)表中的记录相匹配的值也是如此。

例如,可以将 LEFT JOIN 用于“部门”表(左)和“员工”表(右),以选择所有部门,包括那些未分配有员工的部门。 若要选择所有员工,包括那些未分配到任一部门的员工,就要使用 RIGHT JOIN。

以下示例演示如何通过 CategoryID 字段将“类别”表和“产品”表联接起来。 该查询会生成一个含所有类别的列表,包括那些不含任何产品的类别:

SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;

在此示例中,CategoryID 是联接的字段,但由于 SELECT 语句中不包含该字段,所以查询结果中也不包含该字段。 若要包含联接的字段,可在 SELECT 语句中输入字段名称 — 在本例中为 Categories.CategoryID

如果希望创建的查询只包含那些联接字段数据相同的记录,可使用 INNER JOIN 操作。

  • LEFT JOIN 或 RIGHT JOIN 可以嵌套在 INNER JOIN 中,但 INNER JOIN 无法嵌套在 LEFT JOIN 或 RIGHT JOIN 中。 请参阅 INNER JOIN 主题中有关嵌套的内容,了解如何将联接嵌套在其他联接中。

  • 可以链接多个 ON 子句。 请参阅 INNER JOIN 主题中有关链接字句的内容,了解如何链接字句。

如果尝试联接包含备注 Memo 或 OLE 对象数据的字段,就会出错。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。