Jest zbudowany w celu psql, można użyć symboli wieloznacznych w \d
, \dt
, itp, np:
craig=> \dt test*
List of relations
Schema | Name | Type | Owner
--------+-----------+-------+-------
public | test | table | craig
public | testtable | table | craig
public | testu | table | craig
public | testx | table | craig
(4 rows)
Będziemy chcieli wykorzystać \dt
od \d
wyświetli szczegóły dla każdej tabeli, a nie tylko wymień tabelę.
Można to zrobić za pomocą schematów też np:
\dt *.sometable
będzie lista wszystkich tabel nazwanych sometable
w dowolnym schemacie.
Znacznie wygodniej niż pisanie zapytań o numer pg_class
, które zostały połączone z pg_namespace
lub zapytanie information_schema
.
Zwyczajowa składnia globbingowa jest akceptowana, gdzie ?
to dowolny pojedynczy znak, a *
to zero lub więcej znaków. Tak więc \dt ????
wyświetli wszystkie tabele z czteroznakowymi nazwami.
Wielokrotne symbole wieloznaczne są dozwolone, np:
craig=> \dt public.*e?t*
List of relations
Schema | Name | Type | Owner
--------+--------------+-------+-------
public | exclude_test | table | craig
public | prep_test | table | craig
public | test | table | craig
public | testtable | table | craig
public | testu | table | craig
public | testx | table | craig
(6 rows)
Pamiętaj, aby dodać 'nazwa_tabeli', jeśli tylko potrzebują tablenames 'SELECT nazwa_tabeli FROM pg_tables GDZIE SUBSTRING (nazwatabeli z '') <> '',' –
zerocog