Hi,
Has anyone considered creating an aggregate function that returns an
array of all matching rows? I am not sure if this makes much sense from
a speed point of view or is possible, but it would help denormalizing
tables when necessary. For example, consider a table that looks as follows:
SELECT * FROM t;id | value
----+------- 1 | 1.5 1 | 2.5 1 | 3.5 2 | 4.5 2 | 5.5
(5 rows)
It would be nice to be able to do a query as follows:
SELECT id, agg_array(value) FROM t GROUP BY id;id | agg_array
----+----- 1 | {1.5,2.5,3.5} 2 | {4.5,5.5}
(2 rows)
Thanks,
David Kaplan