At 05:20 PM 3/16/2009, pgsql-sql-ow...@postgresql.org wrote:
In-Reply-To: <1992170861895942...@unknownmsgid>
References: <1992170861895942...@unknownmsgid>
Date: Mon, 16 Mar 2009 22:45:54 +0100
Message-ID:
<162867790903161445i78127316s1c0deb3bec0e1...@mail.gmail.com>
Subject: Re: Exclude fields from SELECT command
From: Pavel Stehule <pavel.steh...@gmail.com>
To: Charles Tam <c....@osm.net.au>
Cc: pgsql-sql@postgresql.org
2009/3/16 Charles Tam <c....@osm.net.au>:
> Hi Everybody
>
>
>
> Iâve a table with 35 fields and would like
to perform a SELECT command
> without specifying every single field.
>
> As such, Iâve use the SELECT *
command. Is there an approach to exclude 5
> fields from being returned?
>
>
>
hello
no, there are no way
regards
Pavel Stehule
I think Pavel is right for 99% of the cases. But
there is a "cure that is worse than the disease."
You could select all columns from a bunch of
tables without knowing what the column names
were, excepting N columns, by iterating through
the info schema data and building a SQL select
appropriately (sql meta-programming I guess you
would call it). But it's a real chore to do
manually. If you have this need for some
programmatic purpose (where some initial
investment in effort will pay future dividends),
then check out the info schema options:
http://developer.postgresql.org/pgdocs/postgres/infoschema-columns.html
In your case, I think you'd be looking for five
values of "table_name" and then looking at all
the "column_name" fields, building your column
list, excepting the column_names you wish to exclude..
Best,
Steve
--
Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-sql