Richard Broersma Jr <rabroersma@yahoo.com> writes:
> However, notice that "\timing" and
> explain analyze do not exactly agree on the results they produce.
\timing reports the total elapsed time as seen at the client. EXPLAIN
ANALYZE tells you about the query execution path inside the server; so
it omits the costs of parsing, planning, and network data transmission.
EXPLAIN ANALYZE also has much higher measurement overhead (typically 2
gettimeofday() calls per row, rather than 2 per query as for \timing).
So it's not unheard of for E.A. to report a number *larger* than the
actual execution time, especially on cheap PC hardware which tends to
have dog-slow gettimeofday().
They're both useful, but you have to keep in mind what you're measuring
and for what purpose.
regards, tom lane