On 07/02/11 22.15, Julia Jacobson wrote:
Dear PostgreSQL community, Please consider the following minimal example: CREATE TABLE example (row_id SERIAL, value TEXT); INSERT INTO example(value) VALUES ('val1'); INSERT INTO example(value) VALUES ('val2'); INSERT INTO example(value) VALUES ('val3'); CREATE OR REPLACE FUNCTION foo() RETURNS TEXT AS $$ DECLARE a TEXT; b TEXT[]; i INT; BEGIN FOR i in 1..3 LOOP SELECT INTO a value FROM example WHERE row_id=i; -- This works b[i] := a; -- perfectly! -- SELECT INTO b[i] value FROM example WHERE row_id=i; Doesn't work! END LOOP; RETURN b[2]; END; $$ LANGUAGE 'plpgsql';
this one seems work... CREATE OR REPLACE FUNCTION foo() RETURNS TEXT AS $$ DECLARE b TEXT[]; i INT; BEGIN FOR i in 1..3 LOOP b[i]:= value FROM example WHERE row_id=i; END LOOP; RETURN b[2]; END; $$ LANGUAGE 'plpgsql'; Edoardo -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general