Robert Haas <robertmh...@gmail.com> writes: > Oh, yeah. I guess you need this:
> select thing, string_agg(stuff, ',' order by stuff) from agg_test > group by thing; > Rather than this: > select thing, string_agg(stuff order by stuff, ',') from agg_test > group by thing; > It's all kinds of not obvious to me what the second one is supposed to > mean, but I remember this was discussed before. Perhaps we need a > <note> somewhere about multi-argument aggregates. Done: + <para> + When dealing with multiple-argument aggregate functions, note that the + <literal>ORDER BY</> clause goes after all the aggregate arguments. + For example, this: + <programlisting> + SELECT string_agg(a, ',' ORDER BY a) FROM table; + </programlisting> + not this: + <programlisting> + SELECT string_agg(a ORDER BY a, ',') FROM table; -- not what you want + </programlisting> + The latter syntax will be accepted, but <literal>','</> will be + treated as a (useless) sort key. + </para> regards, tom lane -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs