Hi Can somebody please tell me if the below is possible ? I may not see the forest from the trees Thanks Armand levregdb=# select * from foo1; audit_id | table_name ----------+------------ 6012 | foo2 6013 | foo2 6014 | foo2 select * from foo2; levregdb=# select * from foo2; foo2_add_by | foo2_add_date -------------+--------------- (0 rows) levregdb=# \d foo2; Table "csiprev.foo2" Column | Type | Modifiers ---------------+---------------+----------- foo2_add_by | character(10) | foo2_add_date | character(10) | My intention is to have an output like 6012 | foo2|foo2_add_by|foo2_add_date 6013 | foo2|foo2_add_by|foo2_add_date 6014 | foo2|foo2_add_by|foo2_add_date select a.audit_id, a.table_name, b[1],b[2] from foo1 a, (select array( select column_name::text from information_schema.columns where table_name='foo2' and ( column_name like '%add_by%' or column_name like '%add_date%' )) b) as foo ; audit_id | table_name | b | b ----------+------------+-------------+--------------- 6012 | foo2 | foo2_add_by | foo2_add_date 6013 | foo2 | foo2_add_by | foo2_add_date 6014 | foo2 | foo2_add_by | foo2_add_date But if I join back to foo1 like below I get select a.audit_id, a.table_name, b[1],b[2] from foo1 a, (select array( select column_name::text from information_schema.columns where table_name=a.table_name and ( column_name like '%add_by%' or column_name like '%add_date%' )) b) as foo ; ERROR: invalid reference to FROM-clause entry for table "a" LINE 10: table_name=a.table_name ^ HINT: There is an entry for table "a", but it cannot be referenced from this part of the query. Any idea what am I doing wrong ? Can I do it ? Thanks Armand -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general