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 回答