Re: Concatenating multiple fetches into a single string - Mailing list pgsql-sql

From Tomasz Myrta
Subject Re: Concatenating multiple fetches into a single string
Date
Msg-id 3FCB9E01.6010405@klaster.net
Whole thread Raw
In response to Concatenating multiple fetches into a single string  ("Kumar" <sgnerd@yahoo.com.sg>)
List pgsql-sql
Dnia 2003-12-01 13:01, Użytkownik Kumar napisał:
> Dear Friends,
>  
> I am doing a migration from SQL server to Postgres SQL. A simple select 
> fetches the following names.
>  
> select full_name FROM project_members where 
> project_members.project_role_id in (' + @p_res_ids + ') ;
>  
> Let us say if the results are
>  
> full_name
> ---------------
> David
> Postgres
> plpgsql
>  
> I need to send the out put as David,Postgres,Plsql -- one string, 
> concatenates the fetches from multiple rows. This was handled in SQL 
> server with a cursor.

I can't find simpler function (if I remember well, there is such one), 
so there is my version of aggregate function you need:


create or replace function comma_aggregate(varchar,varchar) returns 
varchar as '
begin if length($1)>0 and length($2)>0 then     return $1 || '', '' || $2; elsif length($2)>0 then   return $2; end if;
return$1;
 
end;
' language 'plpgsql';

drop aggregate comma(varchar) cascade;
create aggregate comma (basetype=varchar, sfunc=comma_aggregate,
stype=varchar, initcond='' );

Regards,
Tomasz Myrta



pgsql-sql by date:

Previous
From: "Kumar"
Date:
Subject: Concatenating multiple fetches into a single string
Next
From: Michalis Kabrianis
Date:
Subject: Permissions problem on 7.4