Re: [SQL] Multiple values for a field

Поиск
Список
Период
Сортировка
От Ross J. Reedstrom
Тема Re: [SQL] Multiple values for a field
Дата
Msg-id 19990815103626.A19124@wallace.ece.rice.edu
обсуждение исходный текст
Ответ на Re: [SQL] Multiple values for a field  (Herouth Maoz <herouth@oumail.openu.ac.il>)
Список pgsql-sql
On Sun, Aug 15, 1999 at 04:26:31PM +0300, Herouth Maoz wrote:
> 
> An alternative may be to create an aggregate function that will give you
> the comma-separated list you desired upon request:
> 
> CREATE AGGREGATE textcat_all
> (
>     basetype = text,
>     sfunc1 = textcat,
>     stype1 = text
> );
> 
> Then you can do something like:
> 
> SELECT da.docid, textcat_all( a.Author_name || ',' )
> FROM docs_authors da, authors a
> WHERE da.authorid = a.id
> GROUP BY da.docid;
> 
> This will return a comma-separated list of author names for each doc id,
> assuming the actual author name is in a separate table. There is an extra
> comma at the end, but I don't suppose that's too much of a problem.
> 

And can be solved as so:
SELECT da.docid, rtrim(textcat_all( a.Author_name || ',' ), ',') ...

Excellent tip, Herouth. This one goes in the 'keepers' bag.

Ross
-- 
Ross J. Reedstrom, Ph.D., <reedstrm@rice.edu> 
NSBRI Research Scientist/Programmer
Computer and Information Technology Institute
Rice University, 6100 S. Main St.,  Houston, TX 77005


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

Предыдущее
От: Herouth Maoz
Дата:
Сообщение: Re: [SQL] Agregate Problem?
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [SQL] Agregate Problem?