On Thu, Oct 28, 2004 at 05:37:29PM -0500, Jim C. Nasby wrote:
> I'm sure this has been answered before, but the search seems to be down
> again.
>
> How can I convert the results of a subselect into an array? IE:
>
> CREATE TABLE a(a int, b int, c int[]);
> INSERT INTO table_a
> SELECT a, b, (SELECT c FROM table_c WHERE table_c.parent = table_b.id)
> FROM table_b
See the "Array Constructors" section in the PostgreSQL documentation:
http://www.postgresql.org/docs/7.4/static/sql-expressions.html#SQL-SYNTAX-ARRAY-CONSTRUCTORS
INSERT INTO table_a
SELECT a, b, ARRAY(SELECT c FROM table_c WHERE table_c.parent = table_b.id)
FROM table_b
--
Michael Fuhr
http://www.fuhr.org/~mfuhr/