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

Équivalent PostgreSQL SHOW TABLES (psql)

MySQL et MariaDB ont un SHOW TABLES , qui génère une liste de tables et de vues dans une base de données. PostgreSQL n'a pas de SHOW TABLES , mais il a une commande qui produit un résultat similaire.

Dans Postgres, vous pouvez utiliser le \dt commande pour afficher une liste de tables. Ceci est une commande psql (psql est le terminal interactif pour PostgreSQL).

Exemple

Voici un exemple de liste de toutes les tables dans PostgreSQL :

\dt

Résultat :

              List of relations
 Schema |       Name       | Type  |  Owner   
--------+------------------+-------+----------
 public | albums           | table | barney
 public | artists          | table | barney
 public | customers        | table | barney
 public | employees        | table | barney
 public | genres           | table | barney
 public | owners           | table | postgres
 public | petbyid          | table | postgres
 public | pets             | table | postgres
 public | pets2            | table | postgres
 public | pets3            | table | postgres
 public | petstypesowners  | table | postgres
 public | petstypesowners2 | table | postgres
 public | pettypecount     | table | postgres
 public | pettypes         | table | postgres
 public | students         | table | barney
 public | t1               | table | barney
 public | teachers         | table | barney
(17 rows)

Dans ce cas, il affiche toutes les tables.

Nous aurions pu utiliser \d sans le t si nécessaire. Utilisation de \d seul équivaut à utiliser \dtvmsE qui affiche une liste de toutes les tables, vues, vues matérialisées, séquences et tables étrangères visibles. Le t dans le \dt est ce qui limite la sortie aux seules tables.

Spécifier un nom de table

Nous pouvons ajouter à la commande un modèle pour renvoyer uniquement les tables qui correspondent au modèle.

Exemple :

\dt pet*

Résultat :

              List of relations
 Schema |       Name       | Type  |  Owner   
--------+------------------+-------+----------
 public | petbyid          | table | postgres
 public | pets             | table | postgres
 public | pets2            | table | postgres
 public | pets3            | table | postgres
 public | petstypesowners  | table | postgres
 public | petstypesowners2 | table | postgres
 public | pettypecount     | table | postgres
 public | pettypes         | table | postgres
(8 rows)

Renvoyer plus de détails sur la table

Nous pouvons ajouter \dt avec un + signez pour qu'il affiche plus d'informations sur chaque table :

\dt+ pet*

Résultat :

                            List of relations
 Schema |       Name       | Type  |  Owner   |    Size    | Description 
--------+------------------+-------+----------+------------+-------------
 public | petbyid          | table | postgres | 0 bytes    | 
 public | pets             | table | postgres | 8192 bytes | 
 public | pets2            | table | postgres | 8192 bytes | 
 public | pets3            | table | postgres | 8192 bytes | 
 public | petstypesowners  | table | postgres | 16 kB      | 
 public | petstypesowners2 | table | postgres | 16 kB      | 
 public | pettypecount     | table | postgres | 8192 bytes | 
 public | pettypes         | table | postgres | 8192 bytes | 
(8 rows)

Cette fois, nous pouvons voir la taille de chaque tableau.