Bagaimana cara membuat daftar semua tampilan untuk database menggunakan perintah SQL di PostgreSQL?
Saya ingin sesuatu yang mirip dengan output dari \dv
perintah psql , tetapi lebih disukai hanya daftar nama tampilan. misalnya,
SELECT ...;
my_view_1
my_view_2
my_view_3
Saya menjalankan PostgreSQL v9.1.4 di Ubuntu Linux.
postgresql
view
postgresql-9.1
Rob Bednark
sumber
sumber
where table_schema='USERNAME'
ke kueripublic
skema.Anda dapat menanyakan
pg_catalog.pg_views
informasi yang Anda inginkan:Permintaan yang disempurnakan untuk mendapatkan nama skema juga - kalau-kalau Anda memiliki beberapa tampilan dengan nama yang sama di skema yang berbeda - dan meninggalkan tampilan sistem tersebut:
IMHO, cara ini lebih baik daripada permintaan INFORMATION_SCHEMA.lihat alasan yang tercantum dalam komentar saya untuk jawaban Phil .
sumber
Jika Anda hanya membutuhkan ini secara interaktif saat di dalam
psql
, Anda juga dapat menggunakan\dv
untuk menampilkan tampilan, atau\dm
untuk tampilan terwujud. Atau gunakan dengan+
, seperti\dm+
misalnya untuk menunjukkan beberapa informasi tambahan (sebagian besar berguna untuk melihat ukuran tampilan terwujud).sumber
\dv *.*
dan\dm *.*
untuk informasi tentang semua skema!Mencoba:
Jika Anda ingin lebih detail, Anda dapat memodifikasi yang berikut ini sesuai dengan kebutuhan Anda:
sumber
Saya membuat
view
daftar katalogviews
:Dan ketika saya ingin melihat semua tampilan dalam database saya menulis:
sumber
Berikut adalah kueri yang akan memunculkan tampilan terwujud Anda juga dan menunjukkan kepada Anda dependensi tampilan.
sumber