7

/path/to/query にあるファイルにクエリを書き込んでいます。クエリで COPY を使用せずに、出力結果を csv ファイルに保存するにはどうすればよいですか? 次のコマンドを試しましたが、出力ファイルのフィールドが「 | 」で区切られています。

psql -U username -d dbname -f /path/to/query -o /path/to/output/file -F ','
4

1 に答える 1

7

ドキュメントでは説明されていませんが、-Fオプションが機能するには-Aオプション (整列されていないテーブル出力) が必要です。

psql -U username -d dbname -f /path/to/query -o /path/to/output/file -F ',' -A

csv でヘッダーを使用したくない場合は、上部と下部に余分な行がないことを意味し、-t オプションも使用します。

psql -U username -d dbname -f /path/to/query -o /path/to/output/file -F ',' -A -t

ヘルプから:

-A, --no-align 非整列テーブル出力モード
-F, --field-separator=STRING フィールドセパレーターを設定 (デフォルト: "|")
-t, --tuples-only 行のみを出力

于 2015-05-26T05:20:33.823 に答える