How to run SELECT queries in PL/pgSQL IF statements
问题 I am trying to run SELECT queries in PL/pgSQL IF statements using the code below: DO $do$ DECLARE query_type real; arr real[] := array[1]; BEGIN IF query_type = 1 THEN RETURN QUERY SELECT "Westminster".* FROM "Westminster" WHERE ("Westminster".intersects = false AND "Westminster".area <= 100); ELSE IF query_type = 0 THEN RETURN QUERY SELECT "Westminster".* FROM "Westminster"; END IF; END $do$ However I get the following error, ERROR: cannot use RETURN QUERY in a non-SETOF function . Does