Re: Aggregate functions with FROM clause and ROW_COUNT diagnostics - Mailing list pgsql-general

From Alexey Dokuchaev
Subject Re: Aggregate functions with FROM clause and ROW_COUNT diagnostics
Date
Msg-id 20180521170113.GA6259@regency.nsu.ru
Whole thread Raw
In response to Re: Aggregate functions with FROM clause and ROW_COUNT diagnostics  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Aggregate functions with FROM clause and ROW_COUNT diagnostics  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On Mon, May 21, 2018 at 12:20:52PM -0400, Tom Lane wrote:
> Alexey Dokuchaev <danfe@nsu.ru> writes:
> > On Mon, May 21, 2018 at 10:45:27AM -0400, Tom Lane wrote:
> >> OP could do something like
> >>     select json_agg(_) as j, count(*) as c INTO r FROM (
> 
> > Thanks, I've arrived at the same solution (using local RECORD) eventually.
> > It works as intended, but I still need to assign OUT parameters by hand:
> 
> >     retcode := tmp.c;
> >     result := tmp.j;
> 
> Actually, it should work to do
> 
>     select json_agg(_), count(*) INTO result, retcode FROM ...

Bingo!  Thanks Tom, you're the best (as always).  Quick reality check
question: are count(*) vs. count(_) equivalent above?  I vaguely recall
that count(1) got somewhat slower than count(*) after 8.2, but cannot
back it up right now.

./danfe


pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Aggregate functions with FROM clause and ROW_COUNT diagnostics
Next
From: Stephen Frost
Date:
Subject: Re: Will Altering and Modifying tables during backup result in acorrupted server after the restore?