关联名

关联名称可以在查询的 FROM 子句中定义,也可以在 UPDATE、MERGE 或 DELETE 语句中,在目标表或视图的名称之后定义。

例如,以下条款将Z定义为 X.MYTABLE:
FROM X.MYTABLE Z

Z被定义为表 X.MYTABLE 的相关名称,因此在该SELECT语句中,只有Z可用于引用 X.MYTABLE 列。

关联名称仅在其定义的上下文中与表、视图、嵌套表表达式或表函数相关联。 因此,相同的关联名称可以在不同的语句中用于不同的目的。 在嵌套表表达式或表函数中,关联名称是必需的。

作为限定词,关联名称可用于避免歧义或建立关联参考。 它也可以作为表格或视图的简称。 在这个例子中,使用Z只是为了避免多次输入 X.MYTABLE。

在 FROM 子句中指定的名称要么公开 ,要么不公开。 关联名称始终是暴露名称。 如果未指定关联名称,则该 FROM 子句中的表名或视图名会被暴露。 例如,在下面的 FROM 子句中,为 EMPLOYEE 指定了关联名称,但没有为 DEPARTMENT 指定关联名称;因此,DEPARTMENT 是一个暴露名称,而 EMPLOYEE 则不是暴露名称:
FROM EMPLOYEE E, DEPARTMENT 
在 FROM 子句中使用关联名称,还可以选择指定与结果表列关联的列名列表。 与关联名称一样,列名应与SELECT语句中的列名一致。 例如,假设DEPT表第一列的名称是DEPTNO。 在SELECT语句中,鉴于FROM子句:
  FROM DEPT D (NUM,NAME,MGR,ANUM,LOC)
您应该使用 D.NUM 而不是 D.DEPTNO 来引用表格的第一列。

如果指定了列列表,则列列表中的名称必须与 表引用中的列数量相同。 每列必须唯一且无限制。