LoginSignup
3
1

More than 5 years have passed since last update.

簡単にPostgreSQLのpsqlで実行したクエリの結果をcsvやtxt形式などで取得する

Last updated at Posted at 2015-10-07

はじめに

データベースのレコードをcsvなどのファイルに出力する方法は色々ありますが、今回はpostgresqlpsql上での動作になります。

条件で絞り込んだり、必要なカラムのみで抽出したデータがほしい時などに使えると思います!

psqlで実行したクエリの結果をcsvやtxt形式などで取得してみる

①psqlを立ち上げる

$ psql hogehoge

適宜psqlを立ち上げてください。

②csvを取得する

psql上で任意のクエリの結果をcsvで取得する。

book_system=# ¥a
book_system=# ¥f ,
book_system=# ¥o FILENAME.csv
book_system=# SELECT * FROM hogehoge;

これで、指定したディレクトリにfilename.csvというファイル名で、実行したクエリの結果が取得できます。

ーコマンド解説ー

  • ¥a:通常psqlでクエリを実行すると、結果が見やすいように均等にスペースなどを使って表示してくれますが、¥aを実行すると均等にならないでスペースがなくなります。
  • ¥f ,:通常psqlでクエリを実行すると、結果が見やすいように各カラムを | で区切ってくれますが、csv形式でファイルを読み込む際は ,(カンマ) 区切りの方が読み込みが楽なので区切り文字を変更します。
  • ¥o filename.csv:実行するクエリを全てfilename.csvに出力します。ファイル形式をcsvからtxt、tcvなどに変更することができます。

こんな感じで、psql上で実行したクエリの結果をcsvやtxtなどで取得が可能になります!

おわりに

sshで接続したサーバからローカルにデータを持ってきたい!
なんて場合には、scpコマンドを使ってあげるといいですねー。

ということで、以上『postgresqlのpsqlで実行したクエリの結果をcsvやtxt形式などで取得する』でした!

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1