ばびぞうブログ

統計モデリング・機械学習・Python・R・Django・PostgreSQLに関してはなにもわかりません

PostgreSQLコマンド覚書

 

環境:mac(Big Sur), psql 13.2

前提:sample.csvという仮のcsvがある想定

 

DB作成・削除

$ createdb sampledb
$ dropdb sampledb

DBと接続

$ psql sampledb
入るとターミナルのコマンドを入力する先頭の部分が$からsampledb=#に変わる

テーブル作成・削除

SQLのCREATE TABLE文でテーブル作成
sampledb=# drop table sampletable;

DB一覧

sampledb=# \l

テーブル一覧

sampledb=# \z

他のDBと接続

sampledb=# \c DB名

カレントディレクトリの確認

sampledb=# \! pwd

csvファイルをテーブルにインポート

sampledb=# \copy テーブル名 from './data.csv' with csv header
headerがないcsvならheaderコマンドを削除すればok
任意の列だけインポートしたいならテーブル名(col1,col2,...)

SQLファイルを実行

sampledb=# \i ./sample.sql
ファイルの実行時間を計測したいなら
sampledb=# \timing \i ./sample.sql

感想

別の書き方があったり、コマンドの意味の認識間違いがある希ガス