如果我在PostgreSQL上运行以下查询:
select *
from osm_pois_v06 pp
where pp.geom && ST_MakeEnvelope(8.174,48.298,12.431,50.930,4326);
我必须等1,34
分钟。
但如果我使用上述查询执行执行计划(解释分析),那么我有以下输出:
计划告诉我执行时间是2,624
秒。但为什么不到1,34分钟?
答案 0 :(得分:0)
因为您正在使用pgAdmin来获取超过600000行的结果集。
在显示大型结果集时,已知pgAdmin速度很慢。 psql
让你感觉更好。
答案 1 :(得分:0)
估计慢速客户端软件和/或网络连接对查询执行的影响的最简单方法是在选择之前添加“创建临时表”。如果在4秒内运行,而在没有'create temp'部分的情况下运行1:34,则可以肯定的是,瓶颈在于将结果集从DB中传出并在接收端处理它。