Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: SELECT <all fields except "bad_field"> from mytbl;



On May 30, 6:48 am, Rodrigo De León <rdele(dot)(dot)(dot)(at)gmail(dot)com> wrote:

> You might want to add:
>
>      AND a.attnum >=1
>
> to remove "tableoid" and friends from the output.

Now I know why I did not get tableoid & friends: because I am querying
a view which does not yield these fields. But to be on the save side,
the clause should be added. So the complete plpgsql code example looks
like this now (in cleaner format):

EXECUTE
 'SELECT '
 || SELECT array_to_string(ARRAY(
   SELECT a.attname
     FROM pg_class c, pg_namespace nc, pg_attribute a
    WHERE nc.oid = c.relnamespace
      AND a.attrelid = c.oid
      AND a.attnum >= 1
      AND nc.nspname = 'myschema'
      AND c.relname = 'mytbl'
      AND a.attname <> 'bad_field'
    ORDER by a.attnum), ', ')
  || ' FROM myschema.mytbl';

Regards
Erwin




Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group