Plpgsql Language Feature?

From: David Hartwig <daveh(at)insightdist(dot)com>
To: pgsql-sql <pgsql-sql(at)postgreSQL(dot)org>
Subject: Plpgsql Language Feature?
Date: 1999-02-11 22:29:27
Message-ID: 36C359C7.60932427@insightdist.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

In the context of a plpgsql script is a possible to access the number of
rows effected by an UPDATE or DELETE statement? It could be used to
simplify, and probably improve performance on, many scripts. I would
like to do something like:

update foo set bar = bar + new.amount where key = new.key;

if ROWS_UPDATED > 0 then
-- This would be less likely to occur
insert into foo (key, bar) values (new.key, new.bar);
end if;

Otherwise I must construct an additional SELECTstatement to see if the
row exists. Something like:

select 1 from foo where key = new.key;

if found then
update foo set bar = bar + new.amount where key = new.key;
else
insert into foo (key, bar) values (new.key, new.bar);
end if;

Might this be a worth while feature if it does not now exist?

TIA.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Lawrenzo D'Wolcoto 1999-02-11 23:29:10 PSQL SELECT Question.
Previous Message Jan Wieck 1999-02-11 20:04:42 Re: [HACKERS] Re: [SQL] RULE questions.