Thread: Update on Insert

Update on Insert

From
SebiF
Date:
Hi Everyone,

Given a table "Items" with a PK "item1" and "Qty" - a numeric column
I'd like to define a way in Postgres to insert when item11 doesn't
exist already in "Items" and update the Qty by adding the new quantity
to the existent when the item11 exists. What is a good approach and
where should I be looking for details. Thanks.

Sebastian


Re: Update on Insert

From
Robert Haas
Date:
On Mon, Nov 16, 2009 at 1:31 PM, SebiF <sfeher@gmail.com> wrote:
> Hi Everyone,
>
> Given a table "Items" with a PK "item1" and "Qty" - a numeric column
> I'd like to define a way in Postgres to insert when item11 doesn't
> exist already in "Items" and update the Qty by adding the new quantity
> to the existent when the item11 exists. What is a good approach and
> where should I be looking for details. Thanks.
>
> Sebastian

This is not a -hackers question; please use pgsql-general instead.

Also see example 38-2 here:
http://www.postgresql.org/docs/current/static/plpgsql-control-structures.html

...Robert


Re: Update on Insert

From
Andreas Kretschmer
Date:
SebiF <sfeher@gmail.com> wrote:
> Hi Everyone,
> 
> Given a table "Items" with a PK "item1" and "Qty" - a numeric column
> I'd like to define a way in Postgres to insert when item11 doesn't
> exist already in "Items" and update the Qty by adding the new quantity
> to the existent when the item11 exists. What is a good approach and
> where should I be looking for details. Thanks.

21:53 < akretschmer> ??upsert
21:53 < rtfm_please> For information about upsert
21:53 < rtfm_please> see
http://www.postgresql.org/docs/current/static/plpgsql-control-structures.html#PLPGSQL-UPSERT-EXAMPLE

Read that.


Andreas
-- 
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect.                              (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly."   (unknown)
Kaufbach, Saxony, Germany, Europe.              N 51.05082°, E 13.56889°