The following restrictions apply to recursive common table expressions.
References to other recursive common table expressions cannot appear within the definition of recursive common table expressions. So, recursive common table expressions cannot be mutually recursive. However, nonrecursive common table expressions can contain references to recursive ones, and recursive common table expressions can contain references to nonrecursive ones.
The only set operator permitted between the initial subquery and the recursive subquery is UNION ALL. No other set operators are permitted.
Within the definition of a recursive subquery, a selfreference to the recursive table expression can appear only within the FROM clause of the recursive subquery.
When a selfreference appears within the FROM clause of the recursive subquery, the reference to the recursive table cannot appear on the nullsupplying side of an outer join.
The recursive subquery cannot contain DISTINCT, or a GROUP BY or an ORDER BY clause.
The recursive subquery can not make use of any aggregate function.
To prevent runaway recursive queries, an error is generated if the number of levels of recursion exceeds the current setting of the max_recursive_iterations option. The default value of this option is 100.
Discuss this page in DocCommentXchange.

Copyright © 2010, iAnywhere Solutions, Inc.  SQL Anywhere 12.0.0 