PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

So listen Sie alle Ansichten in einer PostgreSQL-Datenbank auf

In PostgreSQL können wir die information_schema.views verwenden view, um alle Ansichten in einer Datenbank zurückzugeben.

Wir können auch den \dv verwenden psql-Befehl, um dasselbe zu tun.

Beispiel für die information_schema.views Anzeigen

Hier ist ein Beispiel für die Verwendung von information_schema.views view, um eine Liste der Ansichten in der aktuellen Datenbank zurückzugeben:

SELECT 
    table_schema AS schema,
    table_name AS view
FROM 
    information_schema.views
WHERE 
    table_schema NOT IN ('information_schema', 'pg_catalog')
ORDER BY 
    schema ASC, 
    view ASC;

Beispielergebnis:

+--------+----------------------------+
| schema |            view            |
+--------+----------------------------+
| public | actor_info                 |
| public | customer_list              |
| public | film_list                  |
| public | nicer_but_slower_film_list |
| public | sales_by_film_category     |
| public | sales_by_store             |
| public | staff_list                 |
+--------+----------------------------+

Hier haben wir information_schema ausgeschlossen und pg_catalog sodass wir nur öffentliche und von Benutzern erstellte Ansichten erhalten und nicht mit Systemansichten bombardiert werden.

In diesem Beispiel war ich in der pagila Beispieldatenbank.

Beispiel für \dv Befehl

Bei Verwendung von psql können wir alternativ den \dv verwenden Befehl:

\dv

Beispielergebnis:

                    List of relations
+--------+----------------------------+------+----------+
| Schema |            Name            | Type |  Owner   |
+--------+----------------------------+------+----------+
| public | actor_info                 | view | postgres |
| public | customer_list              | view | postgres |
| public | film_list                  | view | postgres |
| public | nicer_but_slower_film_list | view | postgres |
| public | sales_by_film_category     | view | postgres |
| public | sales_by_store             | view | postgres |
| public | staff_list                 | view | postgres |
+--------+----------------------------+------+----------+
(7 rows)