Por ahi esto te sirve, deberias adaptarlo a tus datos:
select provincia_id, array_to_string(ARRAY(select descripcion
from localidad l
where
localidad.provincia_id = l.provincia_id), '-') as localidades
from localidad
lo encontre aca (hay varias cosas prácticas):
http://www.pgsql.cz/index.php/PostgreSQL_SQL_Tricks
Saludos
2008/11/20 Pablo Braulio <[EMAIL PROTECTED]>
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hola.
>
> Esto ya se planteó en la lista, pero la contestación, creo que no fue
> sobre lo que se pedía.
>
> El mensaje este este:
> http://archives.postgresql.org/pgsql-es-ayuda/2008-07/msg00141.php
>
> Se recomendó este mensaje:
> http://archives.postgresql.org/message-id/20080327234052.GZ8764%40alvh.no-ip.org
>
> Pero ahí lo que se hace es crear una función que agrege texto y luego
> usar una concatenación, pero de campos de distintos campos (campos
> porcentaje y desc_hilo).
>
> En mi caso tengo una esta consulta:
>
> select e.nombre || ' ' ||e.apellidos as Empleado, f.nombre
> from empleados e
> join ficheros_empleados fe on fe.empleado=e.id
> join ficheros f on f.id=fe.fichero;
>
> Que devuelve:
>
> empleado | nombre
> - ---------------------+-----------
> MANOLILLO GAFOTAS | clientes
> Manuel Garcia Lopez | clientes
> Manuel Garcia Lopez | Empleados
> (3 rows)
>
> Al igual que la persona que planteo esto, lo que necesitaría es que se
> quedara de esta forma:
>
> empleado | nombre
> - ---------------------+------------------------
> MANOLILLO GAFOTAS | clientes
> Manuel Garcia Lopez | clientes - Empleados
> (2 rows)
>
> Es decir, los datos que hay que unir (agregar, concatenar o como se
> quiera decir) son del mismo campo.
>
> ¿Alguien puede ayudarme a solucionar esto?. Estoy atascado en este punto
> y no puedo seguir con mi proyecto.
> - --
> Saludos cordiales.
> Pablo.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iEYEARECAAYFAkklFdwACgkQK7lGsMchFsx9iQCdEBALPpvceGS+xWuGCPjr/Vx8
> Kq8An0YNmryJmGvzzBUdSwIqEydcbM1d
> =9Hdq
> -----END PGP SIGNATURE-----
> --
> TIP 2: puedes desuscribirte de todas las listas simultáneamente
> (envía "unregister TuDirecciónDeCorreo" a [EMAIL PROTECTED])
--
TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo
agradecerán