Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere 服务器 - SQL 的用法 » 查询和修改数据 » 连接:从多个表检索数据 » 键连接

 

表的表达式的键连接

SQL Anywhere 通过检查语句中每一对表的外键关系,为表表达式的键连接生成连接条件。

以下示例连接四对表。

SELECT *
FROM (A NATURAL JOIN B) KEY JOIN (C NATURAL JOIN D);

这四个表对是 A-C、A-D、B-C 和 B-D。SQL Anywhere 考虑每一对中的关系,然后将表表达式视为一个整体为其创建生成的连接条件。SQL Anywhere 的具体处理方法取决于表表达式是否使用逗号。因此,以下两个示例中生成的连接条件是不同的。A JOIN B 是不包含逗号的表表达式,(A,B) 是表表达式列表。

SELECT *
FROM (A JOIN B) KEY JOIN C;

在语义上不同于

SELECT *
FROM (A,B) KEY JOIN C;

这两种类型的连接行为将在以下各节中说明:


不包含逗号的表的表达式的键连接
表的表达式列表的键连接
表的表达式列表和不包含逗号的表的表达式的键连接