Re: UPDATE tuples with a sub-select

From: Gerhard Heift <ml-postgresql-20081012-3518(at)gheift(dot)de>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: UPDATE tuples with a sub-select
Date: 2008-11-07 12:35:10
Message-ID: 20081107123510.GC6158@toaster.kawo1.rwth-aachen.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Fri, Nov 07, 2008 at 11:15:07AM +0100, Thomas Kellerer wrote:
> Hi,
>
> are there any plans to support updating a tuple using a sub-select in one of the future versions.
>
> e.g, something like:
>
> UPDATE report_table
> SET (order_count,order_value) = (SELECT count(*), sum(amount)
> FROM order o
> WHERE o.customer_id = report_table.customer_id);

What about:

UPDATE report_table SET order_count = s_count, order_value = s_value
FROM (SELECT count(*) AS s_count, sum(amount) AS s_value FROM order o
WHERE o.customer_id = report_table.customer_id)

Its untested, but I think, it must works like this.

> I know it's currently not possible (so we need to revert to two sub-selects) but I was wondering if this somewhere on the "roadmap"
>
> Regards
> Thomas

Regards,
Gerhard

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Craig Ringer 2008-11-07 12:43:14 Re: Equivalent for AUTOINCREMENT?
Previous Message Gerhard Heift 2008-11-07 12:30:49 Re: UPDATE tuples with a sub-select