I have a composite type like this, for example: create type mytype(a text, b text, c text);
and a table create table t_cols(a text,b text,c text); containing some data. I have a table with my composite type: create table t_composite(data_comp mytype); and loaded data into it like so: insert into t_composite select ROW(a,b,c)::mytype from t_columns; I will want to construct a table containing arrays of this composite type {(a1,b1,c1), ...,(an,bn,cn) } - the arrays can be of variable lengths (the arrays will be formed to meet some constraints). I formed the table for the arrays: create table t_array(data_array mytype[]); My first question is: HOW do I populate this table, at first with arrays containing one element from the t_composite table? I have tried various things with no success. In case it's not clear what I want to do, say, for example that I have a table containing: ('a','b','c') ('d','e','f') ('h'.'i'.'j') ('k','l','m') 1. First of all I'd like to form (and I hope that this is easy!) a table with: {('a','b','c')} {('d','e','f')} {('h','i','j')} {('k','l','m')} 2. After this is done, I will then want to add some other arrays to the table which contain some combination of the initial elements, to perhaps (subject to some constraints) eventually getting something like: {('a','b','c')} {('d','e','f')} {('h','i','j')} {('k','l','m')} {('a','b','c'),('h','i','j')} {('d','e','f'),('h','i','j'),('k','l','m')}