* CSVでインポート・エクスポート [#a0a486c9]


** CSVを読み取る [#tc475968]
 COPY user_table ( user_id, name, age) from '/tmp/user.csv' WITH CSV;

** CSVで表示(デリミタの変更) [#k3ad6939]
 \pset tuples_only 
 \pset pager off
 \pset format unaligned
 \pset fieldsep ','

** 結果をファイルに書き出す [#fb5b9538]
 \o '/tmp/result'
 select * from users;
 \o   (で元に戻す)

** (シェルから)検索結果をCSVに出力する [#x922ecfb]
 echo "select * from users" | psql -A -F ',' -t -U postgres some_db > users.csv
 
 -A 位置揃え無しの出力モード
 -F 'sep' フィールド区切り文字の指定
 -t ヘッダフッタを抑制する

** COPY [#q1f1dcad]
 COPY (SELECT * FROM users LIMIT 3) TO '/tmp/users.csv' 
   (FORMAT 'csv', QUOTE '"', FORCE_QUOTE *, NULL " ", HEADER 1);
*** 参考 [#s329e0c6]
http://www.postgresql.jp/document/9.2/html/sql-copy.html


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS