Thread: SQL function and "UPDATE...RETURNING"
Hi all. Is there a way to write an SQL function like this: create or replace function afunction( recid bigint ) returns bigint as $body$ update atable set afield=0 where recid=$1 returning anotherfield; $body$ language SQL; If i write the function this way, postgres will complain that the update stetement won't return values. I also understand that by switching to PLPGSQL I would b able to do write the function. But I'd prefer SQL in this case. -- Vincenzo Romano -- Maybe Computer will never become as intelligent as Humans. For sure they won't ever become so stupid. [VR-1988]
On 8/2/07, Vincenzo Romano <vincenzo.romano@gmail.com> wrote: > Hi all. > > Is there a way to write an SQL function like this: > > create or replace function afunction( recid bigint ) > returns bigint as $body$ > update atable set afield=0 where recid=$1 returning anotherfield; > $body$ language SQL; > > If i write the function this way, postgres will complain that > the update stetement won't return values. > > I also understand that by switching to PLPGSQL I would b able to > do write the function. But I'd prefer SQL in this case. It's not really possible to do it that way :( merlin