Thread: Getting fields in a table through a query?

Getting fields in a table through a query?

From
"Mitch Vincent"
Date:
How can I get the fields in a given table via an SQL query even if there are
no records in that table? I just need the names of all the fields in a
table -- is that even possible?

Thanks!

-Mitch


Re: Getting fields in a table through a query?

From
Stephan Szabo
Date:
On Mon, 4 Feb 2002, Mitch Vincent wrote:

> How can I get the fields in a given table via an SQL query even if there are
> no records in that table? I just need the names of all the fields in a
> table -- is that even possible?

select * from pg_attribute, pg_class where attrelid=pg_class.oid and
relname='<table name>' and attnum>0;
should give you all the user columns on the table specified as <table
name>

(If you want to get system columns like oid, you can leave off the
attnum>0)


Re: Getting fields in a table through a query?

From
Tom Lane
Date:
"Mitch Vincent" <mitch@doot.org> writes:
> How can I get the fields in a given table via an SQL query even if there are
> no records in that table? I just need the names of all the fields in a
> table -- is that even possible?

Why not just
    select * from foo where false;
and examine the column names that come back?  Lack of any data will not
stop the system from sending column headers.

            regards, tom lane