Re: Helper aggregate function

From: "Christian Kindler" <christian(dot)kindler(at)gmx(dot)net>
To: robins(at)pobox(dot)com
Cc: sergey kapustin <kapustin(dot)sergey(at)gmail(dot)com>, pgsql-sql(at)postgresql(dot)org
Subject: Re: Helper aggregate function
Date: 2008-02-03 20:07:05
Message-ID: 20080203200705.17830@gmx.net
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-sql

hi

in this case you have to use execute:

>> select $1,count(*) from $2 group by $1 order by $1;
execute into myResultSet 'select ' || $1 || ' from ' || $2 || ' group by ' || $1 || ' order by ' || $2;

see plpgsql docs for detailed information

christian

On Sun, February 3, 2008 19:58, Robins Tharakan wrote:
> Please correct me if I am wrong, but as the last few lines of the first
> section in the given document says, you can use $n only for values and not
> for identifiers.
>
> http://www.postgresql.org/docs/8.3/static/xfunc-sql.html
>
> And one more thing, may be you would want to use a user-defined return
> type
> instead of void for this function.
>
> *Robins*
>
> On Feb 3, 2008 5:14 PM, sergey kapustin <kapustin(dot)sergey(at)gmail(dot)com> wrote:
>
>> Hello!
>> Can anyone tell me how i do this properly?
>>
>> create or replace function agg(varchar,varchar) returns void as $func$
>> select $1,count(*) from $2 group by $1 order by $1;
>> $func$
>> Language SQL;
>>
>> Right now this wives me "ERROR: syntax error at or near "$2" at
>> character
>> 97
>> select $1,count(*) from $2 group by $1 order by $1;"
>>
>> Thank you!
>>
>>
>>
>>
>

--
Psssst! Schon vom neuen GMX MultiMessenger gehört?
Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger

Browse pgsql-sql by date

  From Date Subject
Next Message Ray Madigan 2008-02-05 02:16:07 Except without elimination of non-distinct rows
Previous Message Robins Tharakan 2008-02-03 18:58:00 Re: Helper aggregate function