Re: INSERT ... RETURNING in v8.2

From: Vincenzo Romano <vincenzo(dot)romano(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: INSERT ... RETURNING in v8.2
Date: 2007-06-12 15:40:47
Message-ID: 200706121740.47750.vincenzo.romano@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tuesday 12 June 2007 16:35:05 Martijn van Oosterhout wrote:
> On Tue, Jun 12, 2007 at 04:18:32PM +0200, Vincenzo Romano wrote:
> > Well, at least on v8.2.4 I cannot return count(*), that is the
> > number of lines actually inserted into the table. Nor I can
> > return any aggregate function of them.
>
> I don't think anybody considered the possibility of using an
> aggregate there, primary because for an aggregate you need a group
> by. What has been discussed is nested statements, like:
>
> SELECT a, count(*) FROM
> (INSERT <foo> RETURNING a, b)
> GROUP BY a;
>
> But I don't think that's implemented (the interactions with
> triggers havn't been worked out I think)
>
> > Amk I doing anything wrong or is there some missing sentence in
> > the documentation?
>
> When the docs talk about an "expression" they don't mean
> aggregates, since they are not functions in the ordinary sense.
>
> Hope this helps,

I feel that your remarks make some sense.

First, the documentation says "any expression using the table's
columns is allowed".

Second, I'm not using nested statements, but rather a plain
INSERT ... RETURNING COUNT(*) INTO var (it's inside a PL/PgSQL
function body). It should not need any GROUP BY as the query is
plain.

Maybe the solution is somewhere in between what you say and what I'd
expect. Of course at the moment I have added an extra SELECT COUNT(*)
in order to get that number.

--
Vincenzo Romano
--
Maybe Computer will never become as intelligent as Humans.
For sure they won't ever become so stupid. [VR-1988]

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message rwickert 2007-06-12 15:48:02 Re: PL/PGSQL rowtype return pr
Previous Message Pavel Stehule 2007-06-12 15:38:48 Re: PL/PGSQL rowtype return pr