Используя результаты команды \ d в psql - PullRequest
0 голосов
/ 10 февраля 2020

Команда \d в psql выводит список всех таблиц, представлений и последовательностей. Есть ли способ перехватить эти выходные данные в таблицу и выполнить запрос к ней?

mydb-> \d

      List of relations
Schema |  Name  | Type  |   Owner
-------+--------+-------+---------
public | mytab1 | table | username

mydb-> select * from <use relation from \d> where Type='view';

      List of relations
Schema |  Name  | Type  |   Owner
-------+--------+-------+---------

В качестве альтернативы, есть ли способ использовать запрос select-from-where для получения этой таблицы и других метаданных таблицы?

Спасибо.

1 Ответ

0 голосов
/ 10 февраля 2020

Вы можете получить запрос за \d, если запустить psql с опцией -E. Затем выполнение \d также покажет запрос метаданных.

После того, как вы получите этот запрос, его будет легко адаптировать к вашим потребностям.

Если вам нужно создать список В операторах DDL вы можете использовать psql \gexec для выполнения результатов запроса в виде SQL операторов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...