Is there no way to do this without doing
an insert into another table? From: paddy carroll
[mailto:paddy.carroll@xxxxxxxxx] put all your tables in a new table (public.tables) select table_name from public.tables where public.tables.table_name not in (select table_name
from information_schema.tables where table_catalog='postgres' and
table_type='BASE TABLE' and table_schema='public') On 30 Jul 2007, at 20:31, Lee Keel wrote:
Hi
List, I
have a list of table names and I am trying to confirm that they are all in my
postgres db. But what I want returned is a list/array of ones that are in
my list but not in the db. So for example: CREATE
TABLE test (
somecol integer )
WITHOUT OIDS; CREATE
TABLE bar (
barcol
integer )
WITHOUT OIDS; Now
if I were to have a list of table names that included 'test', 'bar', and 'foo',
then how do I get 'foo' to return. Here is what I have, but it returns
the ones that are in the list and I want the opposite of that. select
array( select
table_name::text from information_schema.tables where table_catalog='postgres'
and table_type='BASE TABLE' and table_schema='public' and
table_name = any (array['test', 'bar', 'foo'])) Thanks
in advance for any help on this. Lee
|