X-Original-To: pgsql-sql@postgresql.org Received: from mail1.tpgi.com.au (mail.tpgi.com.au [203.12.160.57]) by postgresql.org (Postfix) with ESMTP id F395E475AD4 for ; Sat, 8 Mar 2003 22:33:43 -0500 (EST) Received: from jac (free-tpg-181.tpgi.com.au [203.219.31.181] (may be forged)) by mail1.tpgi.com.au (8.11.6/8.11.6) with SMTP id h293Xkr13583 for ; Sun, 9 Mar 2003 14:33:46 +1100 Message-ID: <000901c2e5ec$b1411430$1400a8c0@jac> From: "jack" To: Subject: pl/pgsql how to return multiple values from a function Date: Sun, 9 Mar 2003 13:33:44 +1000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Archive-Number: 200303/218 X-Sequence-Number: 12258 Hi, all I use "RETURNS RECORD" to return a multiple values from a function as following but it doesn't work at all. Or is there any other way to do it? Thank you jin advance! ;----- CREATE OR REPLACE FUNCTION tesP_returnRec2( ) RETURNS INTEGER AS' DECLARE rec RECORD; BEGIN SELECT INTO rec tesP_returnRec1(); RAISE NOTICE ''jj=%, ss=%'', rec.jj,rec.ss; RETURN 0; END;' LANGUAGE 'PLPGSQL'; ;------- CREATE OR REPLACE FUNCTION tesP_returnRec1( ) RETURNS RECORD AS' DECLARE rec RECORD; BEGIN SELECT INTO rec CAST(100 AS INTEGER) AS jj, CAST(''ABC'' AS VARCHAR(10)) AS ss; RETURN rec; END;' LANGUAGE 'PLPGSQL';