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

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

 

视图和派生表的键连接

当键连接中包括视图或派生表时,SQL Anywhere 遵循与处理表相同的基本过程,但有以下差异:

  • 对于每一个键连接,SQL Anywhere 都会考虑在查询和视图的 FROM 子句中的表对,并为所有表对的集合生成一个连接条件,而不管视图的 FROM 子句中是包含逗号还是连接关键字。

  • SQL Anywhere 基于其角色名与视图或派生表的相关名同名的外键连接表。

  • 在键连接中包括视图或派生表时,视图或派生表定义中不能包含 UNION、INTERSECT、EXCEPT、ORDER BY、DISTINCT、GROUP BY、集合函数、窗口函数、TOP、FIRST、START AT 或 FOR XML。如果它包含以上任何一项,则返回错误。此外,不能将派生表定义为递归表表达式。

    派生表的工作原理与视图大体相同。唯一差别就是:表的定义包括在语句中,而不是引用预定义的视图。

    有关递归表表达式的信息,请参见递归公用表表达式RecursiveTable 算法 (RT)

 示例 1
 示例 2