Postgresql 我们可以使用假脱机命令在postgres中导出查询结果吗?
我想将查询结果导出到csv文件中。我使用了查询从实体中选择* 将select*从实体复制到“D:/text.csv”,分隔符为“|”csv标题;Postgresql 我们可以使用假脱机命令在postgres中导出查询结果吗?,postgresql,Postgresql,我想将查询结果导出到csv文件中。我使用了查询从实体中选择* 将select*从实体复制到“D:/text.csv”,分隔符为“|”csv标题; 而且很有效。。但是我想知道我是否可以像在oracle中那样使用spool命令来完成它。PostgreSQL没有spool命令。您可以使用发现的复制或使用psql将输出定向到文件。这不是Oracle SPOOL的重新实现 从操作系统提示符 psql -o filename -c 'select * from your_table_name;' 您可能必
而且很有效。。但是我想知道我是否可以像在oracle中那样使用spool命令来完成它。PostgreSQL没有spool命令。您可以使用发现的复制或使用psql将输出定向到文件。这不是Oracle SPOOL的重新实现 从操作系统提示符
psql -o filename -c 'select * from your_table_name;'
您可能必须指定用户名和数据库名称,具体取决于登录的设置方式
从psql提示符
\o filename
select * from your_table_name;
有控制输出的选项。请特别查看-F和-R选项。我尝试了第二个选项。。但是它不起作用。。无论如何,你能告诉我postgresql中是否没有任何spool命令吗?这是我告诉你的第一件事:postgresql没有spool命令。您可以使用COPY或psql将输出发送到文件。请阅读上面链接的PostgreSQL文档,然后重试。与大多数命令行工具一样,它有点挑剔。您可以在Postgres脚本中使用\o命令,以便将单个命令的输出重定向到不同的日志文件。注意,对于大型查询,它可能会说超出RAM,除非您先设置获取计数例如:\set fetch\u count 10000