Karen Hill wrote:
How do I make this function work? I am trying to get all the rolnames
from pg_roles.
Why not just do "SELECT rolname FROM pg_roles;"?
Anyway, in PL/pgSQL:
CREATE OR REPLACE FUNCTION test() RETURNS SETOF name AS $$
DECLARE
rec record;
BEGIN
FOR rec IN SELECT rolname FROM pg_roles LOOP
RETURN NEXT rec.rolname;
END LOOP;
END;
$$ LANGUAGE plpgsql;
And simpler as an SQL function (although, again, why bother?):
CREATE OR REPLACE FUNCTION test_sql() RETURNS SETOF name AS $$
SELECT rolname FROM pg_roles
$$ LANGUAGE sql;
HTH,
Joe
---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend