From: | novnov <novnovice(at)gmail(dot)com> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Return rows from function with expressions |
Date: | 2007-05-24 20:59:24 |
Message-ID: | 10792602.post@talk.nabble.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
I've written many stored procedures in ms sql and a good many functions in
postgres, but I'm rather unsure of how to get a list back from a postgres
function which is not based on a table. Example from sql server:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[procPatient]
@PatStatusID int = 0
AS
BEGIN
SELECT PatID, PatFName + ' ' + PatLName as pname FROM tblPatient WHERE
PatStatusID = @PatStatusID
END
Output from the sproc above is like
PatID pname
123 Merton Baffled
129 Jim Puzzled
I've spent a good deal of time reading here and in the pg docs about
functions that use SETOF. I can't find a plain and simple way to do
something like the above. Is there? I simply need to pass in some params,
and do some evals inside the function and return a set that includes some
cols that are not part of the base table. I've seen solutions that involve
OUT params; a method which uses RECORD that requires the columns to be
defined in the call; refcursors (which I don't really understand); are those
the only options? A simple example like the one I've used for sql server
above would be ideal.
--
View this message in context: http://www.nabble.com/Return-rows-from-function-with-expressions-tf3812759.html#a10792602
Sent from the PostgreSQL - general mailing list archive at Nabble.com.
From | Date | Subject | |
---|---|---|---|
Next Message | Alexander Staubo | 2007-05-24 21:16:40 | Re: why postgresql over other RDBMS |
Previous Message | Raymond O'Donnell | 2007-05-24 20:59:18 | Re: postgres - oid question |