Как получить список представлений в PostgreSQL
Представление (view) – это особая логическая или виртуальная таблица представляющая собой запрос. Этот запрос будет использован как подзапрос, если сделать выборку из представления.
Представления работают как таблицы и никак не отличаются от них. Как же получить список представлений, список только таблиц и определить таблица это или представление?
Используя psql
– интерактивный терминал PostgreSQL – это сделать очень просто.
Команда для получения списка представлений:
\dv
списка таблиц:
\dt
Если же ваша задача получить заветный список из программы, то придется воспользоваться запросами. Для получения списка представлений:
SELECT table_name FROM INFORMATION_SCHEMA.tables WHERE table_type='VIEW' AND table_schema=ANY(current_schemas(false)) ORDER BY table_name;
для списка таблиц:
SELECT table_name FROM INFORMATION_SCHEMA.tables WHERE table_type='BASE TABLE' AND table_schema=ANY(current_schemas(false)) ORDER BY table_name;
для определения типа:
SELECT table_type FROM INFORMATION_SCHEMA.tables WHERE table_name='_your_table_name_';
Аналогичные запросы для MySQL можно посмотреть в этой статье