I found that by doing the following query you can get a list of all schemas or namespaces:
select distinct schemaname from pg_tables where schemaname not in ('information_schema', 'pg_catalog');
In order to select all of the tables within a schema or namespace:
select tablename from pg_tables where schemaname='name_of_schema';
Thanks for the responses.
From: pgsql-admin-owner@postgresql.org [mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Gibson Chimhamhiwa Sent: Wednesday, July 23, 2008 10:22 AM To: pgsql-admin@postgresql.org Subject: Re: [ADMIN] Query a list of tables
and then public which contains the tables with data for my database.
On Wed, Jul 23, 2008 at 5:11 PM, Campbell, Lance <lance@illinois.edu> wrote:
Is there a list somewhere of the system catalog tables and examples of querying it for administrative reasons?
-----Original Message----- From: Scott Marlowe [mailto:scott.marlowe@gmail.com] Sent: Wednesday, July 23, 2008 10:02 AM To: Campbell, Lance Cc: pgsql-admin@postgresql.org Subject: Re: [ADMIN] Query a list of tables
On Wed, Jul 23, 2008 at 8:56 AM, Campbell, Lance <lance@illinois.edu> wrote: > What is the SQL to do the following: > > > > 1) Return a list of all possible SCHEMA names within a database. > > 2) For a given SCHEMA return the list of all table names.
You can either do it with the INFORMATION_SCHEMA, or the system catalogs. To see how to do it with the system catalogs, then start psql with the -E switch and issue \dn and set search_path='schemaname' and \d