MySQL og MariaDB har en SHOW TABLES
sætning, som udsender en liste over tabeller og visninger i en database. PostgreSQL har ikke en SHOW TABLES
sætning, men den har en kommando, der giver et lignende resultat.
I Postgres kan du bruge \dt
kommando for at vise en liste over tabeller. Dette er en psql-kommando (psql er den interaktive terminal for PostgreSQL).
Eksempel
Her er et eksempel på en liste over alle tabeller i PostgreSQL:
\dt
Resultat:
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)
I dette tilfælde viser det alle tabeller.
Vi kunne have brugt \d
uden t
hvis nødvendigt. Brug af \d
alene svarer til at bruge \dtvmsE
som viser en liste over alle synlige tabeller, visninger, materialiserede visninger, sekvenser og fremmede tabeller. t
i \dt
er det, der begrænser output til kun tabeller.
Angiv et tabelnavn
Vi kan tilføje kommandoen med et mønster for kun at returnere de tabeller, der matcher mønsteret.
Eksempel:
\dt pet*
Resultat:
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)
Returner Flere detaljer om tabellen
Vi kan tilføje \dt
med et +
tegn for at få det til at udsende flere oplysninger om hver tabel:
\dt+ pet*
Resultat:
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)
Denne gang kan vi se størrelsen på hvert bord.