From: | Sebastián Villalba <sebastian(at)fcm(dot)unc(dot)edu(dot)ar> |
---|---|
To: | "Lista Ayuda Pgsql" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Concatenar (acumular) resultados en una única variable |
Date: | 2006-05-17 15:26:38 |
Message-ID: | 20060517151607.M75939@fcm.unc.edu.ar |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola amigos. Tengo una consulta que me devuelve lo siguiente:
nombre | otro
-----------+------
Educación |
Filosofía |
Otro | jjjj
(3 rows)
Yo necesitaría hacer una función que me devuelva una variable con el valor
"Educación, Filosofía, Otro jjjj". Alguna forma de hacerlo?. No sé si será
importante pero intenté con:
------
CREATE OR REPLACE FUNCTION "selectTrabajoCapitulo"(bigint) RETURNS varchar AS $$
DECLARE
capitulos varchar := '';
cap varchar := '';
BEGIN
SELECT INTO cap c.nombre, tc.otro FROM trabajo t, capitulo c,
"trabajoCapitulo" tc WHERE t.id = $1 AND t.id = tc.id_trabajo AND
tc.id_capitulo = c.id;
capitulos := capitulos || cap;
RETURN capitulos;
END;
$$ LANGUAGE plpgsql STABLE SECURITY DEFINER;
------
Pero siempre me devuelve solo el primero, es decir "Educación". Saludos...
-
-------------------------------------------
Sebastián Villalba
sebastian(at)fcm(dot)unc(dot)edu(dot)ar
-------------------------------------------
From | Date | Subject | |
---|---|---|---|
Next Message | miguel | 2006-05-17 15:27:56 | Re: copiar esquema |
Previous Message | Alejandro Gasca | 2006-05-17 14:52:11 | Re: copiar esquema |