PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment lister toutes les vues dans une base de données PostgreSQL

Dans PostgreSQL, nous pouvons utiliser le information_schema.views view pour renvoyer toutes les vues d'une base de données.

On peut aussi utiliser le \dv psql pour faire la même chose.

Exemple de information_schema.views Afficher

Voici un exemple d'utilisation de information_schema.views view pour renvoyer une liste de vues dans la base de données actuelle :

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;

Exemple de résultat :

+--------+----------------------------+
| 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                 |
+--------+----------------------------+

Ici, nous avons exclu information_schema et pg_catalog afin que nous n'obtenions que des vues publiques et créées par les utilisateurs, et que nous ne soyons pas bombardés de vues système.

Dans cet exemple, j'étais dans la pagila exemple de base de données.

Exemple de \dv Commande

Lors de l'utilisation de psql, nous pouvons également utiliser le \dv commande :

\dv

Exemple de résultat :

                    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)