I think it would be greatly helpful if the insert...returning could be
seen as a "select" statement and, thus, being usable in the way I
have described. I suspect that the insert...returning is actually
implemented as an inser plus a select.

You can create a function which does the INSERT RETURNING and returns the result, and use this function in a subsequent INSERT.

        You can also write, in plpgsql :

        FOR a,b,c IN SELECT ... LOOP
                INSERT INTO table1 (...) VALUES (a,b) RETURNING your_id INTO 
_var;
                INSERT INTO table2 (...) VALUES (c , _var );
        END LOOP

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

Reply via email to