The following bug has been logged online:

Bug reference:      4516
Logged by:          Michal szymanski
Email address:      [EMAIL PROTECTED]
PostgreSQL version: 8.3
Operating system:   Windows
Description:        FOUND variable does not work after RETURN QUERY
Details: 

This short program display two rows instead one. If I  use RETURN NEXT it
works.

CREATE TABLE test_table (
        value  VARCHAR
);
INSERT INTO test_table VALUES ('a');
INSERT INTO test_table VALUES ('b');

CREATE OR REPLACE FUNCTION test()
  RETURNS SETOF test_table AS
$BODY$
DECLARE
BEGIN

        RETURN QUERY 
                SELECT * FROM test_table WHERE value='a';
        IF NOT FOUND THEN
                RETURN QUERY 
                        SELECT * FROM test_table WHERE value='b';
        END IF;
        
        RETURN;
END;
$BODY$
  LANGUAGE 'plpgsql' VOLATILE;

select * from test()

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to