Обсуждение: What is the best way to select all user defined field names in a table?

Поиск
Список
Период
Сортировка

What is the best way to select all user defined field names in a table?

От
"Yasuo Ohgaki"
Дата:
I'm wandering what is the best way to get all user fields from a table using
SQL.

With following SQL, I get extra field names that is not defined by user.
(cmax,
cmin, etc)

select a.attname from pg_class as c, pg_attribute as a where c.oid =
a.attrelid and c.relname = 'table_name';

It seems pg_attribute does not have flag to distinguish user defined fields.
(Is it?)
An option is excluding all system fields in where clause one by one, but I
thought there might be a better way to do that. (I searched recent mail list
archive, couldn't find one)

Thanks,

--
Yasuo Ohgaki


Re: What is the best way to select all user defined field names in a table?

От
Tom Lane
Дата:
"Yasuo Ohgaki" <yasuo_ohgaki@hotmail.com> writes:
> It seems pg_attribute does not have flag to distinguish user defined fields.

attnum > 0 indicates a user field.

            regards, tom lane