X-Original-To: pgsql-sql-postgresql.org@localhost.postgresql.org Received: from localhost (unknown [200.46.204.144]) by svr1.postgresql.org (Postfix) with ESMTP id E005B5282F for ; Fri, 22 Jul 2005 12:49:25 -0300 (ADT) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 17874-05 for ; Fri, 22 Jul 2005 15:49:24 +0000 (GMT) Received: from localhost.localdomain (unknown [12.31.43.201]) by svr1.postgresql.org (Postfix) with ESMTP id A313B5297E for ; Fri, 22 Jul 2005 12:49:20 -0300 (ADT) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by localhost.localdomain (8.13.1/8.13.1) with ESMTP id j6MFnNPc015804 for ; Fri, 22 Jul 2005 11:49:23 -0400 Received: from localhost (localhost [[UNIX: localhost]]) by localhost.localdomain (8.13.1/8.13.1/Submit) id j6MFnM6M015803 for pgsql-sql@postgresql.org; Fri, 22 Jul 2005 11:49:22 -0400 From: "Mark R. Dingee" To: pgsql-sql@postgresql.org Subject: Multi-column returns from pgsql Date: Fri, 22 Jul 2005 11:49:21 -0400 User-Agent: KMail/1.7.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200507221149.21550.mark.dingee@cox.net> X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, hits=0.103 tagged_above=0 required=5 tests=AWL, UPPERCASE_25_50 X-Spam-Level: X-Archive-Number: 200507/193 X-Sequence-Number: 22171 Hi Everyone, Does anyone know if/how it's possible to return multi-column sets from a pgsql function? Right now I'm using something like the following as a work around CREATE OR REPLACE FUNCTION my_func() returns SETOF TEXT AS ' DECLARE rec record; BEGIN FOR rec IN SELECT txt1, txt2 FROM mytable LOOP RETURN NEXT rec.txt1; RETURN NEXT rec.txt2; END LOOP; RETURN; END;' language 'plpgsql'; which leaves me parsing multiple records to achieve the desired end result. Anyone have any thoughts? Thanks, Mark