Restrictions

The following restrictions apply to using iterator functions in the FROM clause:
  • Iterator functions cannot refer to other columns in the FROM clause. For example, the following query is invalid because the fibseries iterator function specifies the column t.x as an argument:
    SELECT t.x, vtab.col 
    FROM t, TABLE (FUNCTION fibseries(t.x)) vtab(col);
    However, iterator functions can refer to other columns when used in an outer query, as in:
    SELECT t.x FROM t
    WHERE t.y IN 
      (SELECT col FROM TABLE (FUNCTION fibseries(t.y)) vtab(col));
  • Iterator functions cannot generate OUT parameters and statement-local variables.
  • You cannot use iterator functions as the target in INSERT, UPDATE, or DELETE statements.
  • UDRs used in the FROM clause must be iterator functions.