我有一个查询写入位于 /path/to/query 的文件中。如何在查询中不使用 COPY 将输出结果保存到 csv 文件?我尝试了以下命令,但输出文件的字段由“|”分隔。
psql -U username -d dbname -f /path/to/query -o /path/to/output/file -F ','
我有一个查询写入位于 /path/to/query 的文件中。如何在查询中不使用 COPY 将输出结果保存到 csv 文件?我尝试了以下命令,但输出文件的字段由“|”分隔。
psql -U username -d dbname -f /path/to/query -o /path/to/output/file -F ','
文档中没有解释,但是该-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 只打印行