postgresql:顺序执行多个查询并将结果发送到文件

时间:2012-05-19 08:10:42

标签: postgresql

我正在使用Windows中的PostgreSQL 9(pgAdmin3),我正在尝试对5个真正耗费时间的查询执行不同的EXPLAIN ANAlYZE命令,并将结果发送到单个文件。 有人可以帮我解决这个问题吗? 感谢

1 个答案:

答案 0 :(得分:3)

使用psql命令行实用程序可能更好,而不是使用pgadminIII。您可以使用所需的所有psql命令创建一个文件,如下所示。

$ cat test.psql
\o test.txt
\qecho First query
explain analyze select * from narrow;
\qecho Second query
explain analyze select * from person;
\q

\o告诉psql将所有查询输出发送到文件test.txt。 \qecho仅用于文档;它会将您喜欢的任何字符串写入输出文件。

在我的机器上,我会像这样运行该文件(test.psql)。

$ psql -h localhost -p 5433 -U postgres sandbox < test.psql

只是告诉psql服务器在我的计算机上,它正在侦听端口5433,我想以用户“postgres”连接到数据库“sandbox”,并从test中读取所有命令。 PSQL。所有查询的输出都将在test.txt文件中。