【PostgreSQL】psqlメタコマンドチートシート・使い方

MySQL と同様に、PostgreSQL でもメタコマンド機能が psql というコマンドの一種として \ から始まるコマンドで定義されています。これを使うと出力結果が崩れなくなりますし、簡単に DB 操作できるようになります。

こんにちは。iQeda [@iQeeeda] です。

メタコマンドとは...例えば MySQL の出力結果が長すぎて表示が崩れてしまう場合、
SQL の末尾に \G を付与したら表を崩れないように表示する、といった裏技コマンドでした。

もちろん PostgreSQL でも似たような機能が提供されています。

今回 psql コマンドの一種で \ から始まるメタコマンドについて解説します!

psql の \ 系コマンド

コマンド

意味

\h [SQL コマンド]

SQL コマンドの文法ヘルプ
\h * で全コマンド表示

\?

\ 系の psql コマンドヘルプ
psql -? で psql コマンドのオプションについてのヘルプ表示

\q

PostgreSQL 終了

\c [データベース名]

データベース接続

\d [テーブル名]

トリガーを含むテーブル定義を表示

\d+ [テーブル名]

\d より詳しく表示
テーブル説明・ディスクサイズなども表示

\l

データベースリスト表示

\dy

イベントリスト表示

\df

関数リスト表示

\di

インデックスリスト表示

\dn

スキーマリスト表示

\dt *.*

全スキーマのテーブルをリスト表示

\dT+

全データ型をリスト表示

\dv

ビューをリスト表示する

\df+ [関数名]

関数が SQL でどう実行されるか表示する

\x

拡張表示。出力結果が長すぎて表示が崩れてしまう場合、このコマンドで縦型表示に変更して見た目を整えることができる

\copy (SELECT * FROM [テーブル名]) TO 'CSVファイル名' WITH CSV

テーブルを csv ファイルとして出力する

\du

ユーザリスト表示

\du [ユーザ名]

ユーザが存在する場合はリスト表示

\z

テーブル・シーケンスリスト表示

\i [ファイルパス]

ファイルからコマンドを読み込んで実行

PostgreSQL 日本語ドキュメント

メタコマンドはたくさんあるので、詳しくは公式サイトのマニュアルを確認しましょう。
場所が少し分かりにくいので説明しておきます。

上記リンクにアクセス後、お使いのバージョンのマニュアルを選択してください。

  1. 「日本語ドキュメント(HTML版)」を選択
  2. 「VI. リファレンス」を選択
  3. 「II. PostgreSQLクライアントアプリケーション」を選択
  4. 「psql」を選択
  5. 「メタコマンド」の項目に詳しく説明が載っています

No comments yet