我遇到了一个问题,无法将我的PostgreSQL输出从shell导出为csv文件。
我的SQL脚本名为script.sql
。
我在shell中输入了以下命令:
psql congress -af script.sql &> filename.csv
但是当我打开filename.csv
文件时,Excel csv中所有列的值都被挤压到一个列中(请参见附带的屏幕截图)。
然后我尝试了另一种方式。我编辑了我的script.sql
:
Copy (Select * From ...) To '/tmp/filename.csv' With CSV;
然后我在数据库的 shell 中输入了以下命令:dbname
。
\i script.sql
输出结果为:
COPY 162
我的输出查询有162行。
所以我输出表格的162行已经被复制到了shell中。我该如何将它们粘贴或移动到csv文件中呢?
或者,如果我要使用filename.csv(见附图),我该如何修复那个csv/Excel文件的格式呢?
psql
中\copy
(客户端)与COPY
(服务器端)查询的区别:https://dev59.com/q3I_5IYBdhLWcg3wHvQ5 - nealmcb