【问题标题】:Why explain analyze and execution query time is different为什么解释分析和执行查询时间不同
【发布时间】:2021-11-01 04:25:40
【问题描述】:

我有一个基于条件b.customer_id = a.customer_id 连接两个表的查询,两个表上的两个表都有索引(btree)customer_id

当我运行explain analyze 时,它显示15 ms

但是当我执行查询时,它需要26 secs:

Successfully run. Total query runtime: 26 secs 168 msec.
30038 rows affected.  

【问题讨论】:

    标签: postgresql query-optimization postgresql-10


    【解决方案1】:

    那是因为您使用的是 pgAdmin 或类似的客户端工具,需要很长时间才能呈现 30038 行。

    【讨论】:

    • 那么应该注意哪个时间是实际查询执行时间呢?我对 PgAdmin 中的 query execution timeExplain Analyze Execution time 感到困惑。
    • 这取决于您的用例。如果您的实际用例是使用 pgAdmin 查看 30000,请花 26 秒。服务器上的执行时间不能包含网络延迟或客户端处理结果所花费的时间。
    猜你喜欢
    • 1970-01-01
    • 2012-09-17
    • 2014-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多