Описать SELECT по сравнению с описать таблицу в PostgreSQL

\d похоже не работает кроме таблицы в PostgreSQL.

Я хочу получить эквивалент \d <table>, но для запроса SELECT.

Например, я хотел бы сказать:

\d (SELECT statement) AS table2

где оператор SELECT может содержать JOIN и т. д.

прямо как в TimesTen:

desc  (SELECT .. FROM ... WHERE ...)

дает информацию о столбце, такую ​​​​как имя, тип и длина

Я могу использовать \pset footer on или --expanded, но это не дает тип и длину данных.


person Alex B    schedule 10.11.2014    source источник
comment
Это невозможно в psql. Некоторые клиенты с графическим интерфейсом предлагают это, хотя   -  person a_horse_with_no_name    schedule 10.11.2014
comment
GUI может получить это из ODBC, но мне это нужно в psql   -  person Alex B    schedule 10.11.2014


Ответы (1)


Вы не против сделать это внутри транзакции?

begin;
create table x as select * from t with no data;
\d x
                 Table "public.x"
 Column |            Type             | Modifiers 
--------+-----------------------------+-----------
 t      | timestamp without time zone | 

rollback;
person Clodoaldo Neto    schedule 10.11.2014