I'm using 8.3.3. I came across the array_accum aggregate function in the docs: http://www.postgresql.org/docs/8.3/interactive/xaggr.html CREATE AGGREGATE array_accum (anyelement) ( sfunc = array_append, stype = anyarray, initcond = '{}' ); This would be very useful to me, but I have a question about ordering of values. If I use more than one array_accum in the same select clause, is there any reliable correspondence between the order of elements in the returned arrays? In other words, if a have a table foo like so: a b c ----+----+---- aaa | 12 | a1 aaa | 13 | a2 and I run select a, array_accum (b), array_accum (c) from foo group by a; then can I expect that the results will always be one of aaa | {12, 13} | {a1, a2} or aaa | {13, 12} | {a2, a1}? OR, could the query also return the arrays as aaa | {13, 12} | {a1, a2} or aaa | {12, 13} | {a2, a1}? If so, would there be any way to enforce the first behaviour? Thanks, nishad -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general