psql で を実行すると、\dt
現在のスキーマ (public
デフォルトでは) 内のテーブルのリストのみが表示されます。
すべてのスキーマまたは特定のスキーマ内のすべてのテーブルのリストを取得するにはどうすればよいですか?
ベストアンサー1
すべてのスキーマにおいて:
=> \dt *.*
特定のスキーマでは:
=> \dt public.*
使用可能いくつかの制限がある正規表現
\dt (public|s).(s|t)
List of relations
Schema | Name | Type | Owner
--------+------+-------+-------
public | s | table | cpn
public | t | table | cpn
s | t | table | cpn
上級ユーザーは、文字クラスなどの正規表現表記を使用できます。たとえば、[0-9] は任意の数字に一致します。正規表現の特殊文字はすべて、セクション 9.7.3 で指定されたとおりに動作します。ただし、
.
は前述のように区切り文字として扱われ、*
は正規表現表記 に変換され.*
、?
は に変換され.
、は文字通りに一致します。必要に応じて、を、 を 、またはをと$
記述することで、これらのパターン文字をエミュレートできます。は、正規表現の通常の解釈とは異なり、パターンが名前全体に一致する必要があるため、正規表現文字としては必要ありません (つまり、 はパターンに自動的に追加されます)。パターンを固定したくない場合は、 の先頭または末尾に を記述します。二重引用符内では、すべての正規表現の特殊文字がその特別な意味を失い、文字通りに一致することに注意してください。また、正規表現の特殊文字は、演算子名パターン (つまり、 の引数) 内で文字通りに一致します。?
.
(R+|)
R*
(R|)
R?
$
$
*
\do