In this issue the following statement is made:

"In plpgsql, you cannot run a dynamic SELECT statement and be able to do anything with the selected data. You cannot assign the selected value to a variable or return the selected value from the function. You can, however, easily construct INSERT, UPDATE and DELETE statements as well a DDL (Data Definition Language: CREATE, ALTER, etc.)"

This is not my experience. For example, I am doing the following in my code and it works just fine:

for v_tmp in execute ''select min(list_price) as price_selected_min, max(list_price) as price_selected_max
from table1
where xx_id = '' || p_xx_id ||
'' and date_deleted is null'' loop


        v_price_selected_min := v_tmp.price_selected_min;
        v_price_selected_max := v_tmp.price_selected_max;

end loop;

It works just fine for me.

I also can return result set using

for r in execute ''select statement'' loop
                   return next r;
end loop;

Avi


---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings

Reply via email to