Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
控制对于使用多表连接的重复相关名的查询,是允许还是报告为错误。
On、Off
On
可以为单个连接或 PUBLIC 设置此选项。您必须具有 SET ANY PUBLIC OPTION 系统特权才能为 PUBLIC 或者其他用户或角色设置此选项。
如果此选项设置为 On,则 SQL Anywhere 允许在外连接提供空值的一端使用重复的相关名。使用同一相关名指定的所有表或视图被解释为表或视图的同一实例。
以下的 FROM 子句说明了 SQL Anywhere 对使用重复相关名的连接的解释,其中 C1 和 C2 是搜索条件:
( R left outer join T on ( C1 ), T join S on ( C2 ) )
如果此选项设置为 On,则对此连接的解释如下所示:
( R left outer join T on ( C1 ) ) join S on ( C2 )
如果将此选项设置为 Off,则生成 SQLCODE -137。请参见表 '%1' 需要唯一的相关名。
查看消除重复相关名的结果,可以使用 REWRITE 函数并将第二个参数设置为 ANSI 来查看重写的语句。