获取运行PostgreSQL查询的执行时间

时间:2017-07-27 10:13:12

标签: postgresql execution-time

我正在针对Postgres 9.5数据库运行pgAdmin 4中的查询。有没有什么方法可以估算出这个查询的运行时间?它现在运行了近20个小时。

我只找到有关日志记录和类似信息的信息,以便在查询完成后获得实际执行时间。

查询将在递归CTE中使用st_distance订购约300,000个postGIS点。

有SQL或Postgres任何机制来阻止无限运行的查询吗?递归应该在某个时刻停止,有没有办法可以查看最后构造的行,这会给我一个提示,查询在递归中的距离。

1 个答案:

答案 0 :(得分:0)

如果你的交易处于死锁状态,PostgreSQL可以通过杀死所涉及的一个(或一些)交易来解决它。

否则,你必须掌握你正在做的事情。

当您使用EXPLAIN(没有ANALYZE)时,计划程序会估算您的查询持续时间,但此值必须视为相对而非绝对值。