Re: Concatenating several rows

Поиск
Список
Период
Сортировка
От Pierre Thibaudeau
Тема Re: Concatenating several rows
Дата
Msg-id 74b035bb0701292010p7dc7e341s938262bef19f48e0@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Concatenating several rows  ("George Pavlov" <gpavlov@mynewplace.com>)
Список pgsql-novice
Thank you, George and Phillip!  I was trying something similar (doing
a cast) which wasn't working:

SELECT array_to_string( (SELECT name FROM pseudonyms WHERE
person_id=125)::array, ' ');


In the meantime, I wrote a little function to do the job, but your
solution is simpler:

CREATE OR REPLACE FUNCTION persons.aggregatenames(personid integer)
  RETURNS text AS
$BODY$declare
somerow record DEFAULT '';
thenames text;
BEGIN
FOR somerow IN SELECT name FROM pseudonyms WHERE person_id=personid LOOP
    thenames := thenames || ' ' || somerow.name ;
END LOOP;
RETURN thenames;
END;$BODY$
  LANGUAGE 'plpgsql' STABLE;



> SELECT array_to_string(array(SELECT name FROM pseudonyms WHERE
> person_id=125), ' ');

В списке pgsql-novice по дате отправления:

Предыдущее
От: "George Pavlov"
Дата:
Сообщение: Re: Concatenating several rows
Следующее
От: "Matthew Campbell"
Дата:
Сообщение: Newbie Developer Question