Как мне перечислить все представления для базы данных, используя команду SQL в PostgreSQL?
Я хотел бы что-то похожее на вывод команды psql \dv
, но желательно просто список имен представлений. например,
SELECT ...;
my_view_1
my_view_2
my_view_3
Я использую PostgreSQL v9.1.4 в Ubuntu Linux.
postgresql
view
postgresql-9.1
Роб Беднарк
источник
источник
where table_schema='USERNAME'
к запросуpublic
схема.Вы можете запросить
pg_catalog.pg_views
необходимую информацию:Уточненный запрос, чтобы также получить имя схемы - на случай, если у вас есть несколько представлений с одним и тем же именем в разных схемах - и пропустить эти системные представления:
ИМХО, этот способ лучше, чем запрос INFORMATION_SCHEMA.views по причинам, изложенным в моем комментарии к ответу Фила .
источник
Если вам это нужно только в интерактивном режиме
psql
, вы также можете использовать его\dv
для отображения представлений или\dm
для материализованных представлений. Или используйте+
, как,\dm+
например, чтобы показать некоторую дополнительную информацию (в основном полезно, чтобы увидеть материализованный размер представления).источник
\dv *.*
и\dm *.*
для этой информации на всех схемах!Пытаться:
Если вам нужна более подробная информация, вы можете изменить следующее в соответствии с вашими потребностями:
источник
Я создал
view
список каталоговviews
:И когда я хочу увидеть все представления в базе данных, я пишу:
источник
Вот запрос, который также выведет ваши материализованные представления и покажет вам зависимости представлений.
источник